[플러터] SearchBar Widget 사용하기
검색기능을 만들일이 있을지 모르겠지만, 예전에 슬쩍 봤었던, SearchBar Widget에 뭔가 신박한 무엇인가가.. 생겼나 살펴보았다. 다짜고짜, SearchBar 위젯을 달아본다. 입력창에 별다른 제한을 두지 않으니, 그닥 큰 생각을 할 필요는 없었다. 대충 숫자를 사용해서, string list를 만들고, 필터가 걸렸을때 사용할 빈 list를 만들었다. List list = [ "1", "2", //... 중간 생략 ]; List filteredList = []; 입력값에 제한을 둔다면 컨트롤러가 필요하겠지만, 이번엔 건드리지 않는 것으로 한다. var textcontroller = TextEditingController(); 복잡하지만, onChanged 이하 구문만 살펴보면 될 것이다. 입력된..
[다트] 리스트 중복 제거
리스트에서 중복을 제거하는 방법이야 여러가지가 있겠지만, 아래 방법은 어떨까? toSet으로 중복을 제거하고, 다시 리스트로 바꿔주는 방법이다. List listSample = [1, 2, 2, 3, 4, 4, 23, 24, 324, 2353, 12, 1, 12]; main() { Set setSample = listSample.toSet(); print(setSample); // Console >> {1, 2, 3, 4, 23, 24, 324, 2353, 12} List setNewList = []; setNewList.addAll(setSample); print(setNewList); // Console >> [1, 2, 3, 4, 23, 24, 324, 2353, 12] print('newList\..
[플러터] Map 정렬하기
아래와 같은 dblist Map이 있다고 하면, Map dblist = { 0: [1, '가', 8, '나'], 1: [2, '마', 4, '바'], 2: [6, '자', 1, '치'], }; Map의 구성은 아래와 같다. print(dblist); //console >> {0: [1, 가, 8, 나], 1: [2, 마, 4, 바], 2: [6, 자, 1, 치]} 정렬을 위해 Key값을 리스트로 추출하는 방법은 아래와 같다. // 키 값을 리스트로 추출 var sortedKeys = dblist.keys.toList(growable: false); print(sortedKeys); //console >> [0, 1, 2] LinkedHashMap 사용을 위해서는 collection 패키지를 import ..
[플러터] widget : Wrap
column / row 대신사용 column 이나, row widget을 사용할 때, 내부 widget들의 사이즈가 screen size를 넘게 되면, 오류가 발생하는데, 대신 Wrap 위젯을 사용하면, 자동으로 하단으로 내려오게 된다. 기본적인 기능인 것 같은데, 딱히 쓸일이 있을지는 모르겠다. Center( child: Wrap( spacing: 10, // horizontal spacing runSpacing: 10, // vertical spacing children: [ textFieldWidget(), textFieldWidget(), textFieldWidget(), textFieldWidget(), textFieldWidget(), textFieldWidget(), textFieldWidg..
[플러터] 위젯 사이즈 확인하기
GlobalKey... 이 녀석 어디다 쓰는지 명쾌하지 않았는데, 그중 한 예제가 될 수 있을 듯하다. 우선 키를 생성한다. GlobalKey sizekey = GlobalKey(); 사이즈 확인을 원하는 위젯에서, 키를 받아온다. Positioned( child: SizedBox( key: sizekey, // apply Global key for check size... width: 200, height: 250, ), ), onPressed 이하 코드를 보게 되면, GlobalKey에서 Size를 가져오게 된다. 솔직히 말하면, 정확하게 무슨 과정인지 잘 모르겠다. Positioned( top: 180, left: 20, child: TextButton( style: ButtonStyle( // f..
[다트] MAP : Map<int, List>
구글 시트에서 컬럼값을 리스트로 가져왔더니, 각 열마다 따로 논다. 하나의 키 값으로 정렬을 하고 싶은데.. MAP을 사용해서, MAP을 만들어서 활용해야겠다. List list1 = [1, 2, 3]; List list2 = ["a", "b", "x"]; List list3 = ["sfdsfsfd", "wetrwgtre", "dgerb"]; List listAll = [list1, list2, list3]; Map listToMap = {}; ltm() { for (int x = 0; x < list1.length; x++) { Map _newEntries = { list1[x]: [list2[x], list3[x]] }; listToMap.addEntries(_newEntries.entries); }..