일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- jetpack compose
- 소울칼리버6
- 좋은글필사하기
- 1인개발자
- Freesound
- ASMR
- 공부집중
- 공자명언
- 이모지메모
- Linux
- 코틀린
- Flutter
- androidx
- recyclerview
- FSM
- 장자명언
- 명언모음
- kotlin
- Streaming
- 오픈소스
- DART
- bash
- Android
- Firebase
- 파이썬
- 넷플릭스
- 이모지
- 벤자민플랭클린
- 명심보감
- Coroutine
- Today
- Total
목록전체 글 (521)
Vintage appMaker의 Tech Blog
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/by87fS/btrH3b5B9Tk/Awes9k0B8kJyrlJgi9B7U1/img.png)
Flutter에서는 특정환경에서 ListView가 스크롤되지 않는 경우가 있다(예로 Autocomplete에서 ListView를 구현할 때). 그럴경우 Widget의 구조를 아래와 같이 SingleChildScrollView, Expanded, ListView로 만든다. 그리고 ListView에서는 primary 파라메터를 false, shrinkWrap 파라메터를 true로 설정하면 스크롤을 해결할 수 있다. SingleChildScrollView( .. child: ListView.builder( .. primary: false, shrinkWrap: true, ) ) (*) SingleChildScrollView 바로 아래 Expanded를 사용하면 안된다. Expanded는 Row, Column ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9XJnq/btrH2hY1d4k/ZQEVidt2R6gKpAGpJfAOCk/img.gif)
Autocomplete class - material library - Dart API A widget for helping the user make a selection by entering some text and choosing from among a list of options. The user's text input is received in a field built with the fieldViewBuilder parameter. The options to be displayed are determined using options api.flutter.dev [전체소스] import 'package:flutter/material.dart'; void main() => runApp(const A..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bFmTxy/btrHVJnSRhh/I4EzEeuHKgMfiEHqRvHkZ1/img.gif)
1. 다른 플랫폼과 달리 Android에서는 하단메뉴가 존재하는 UI에서는 back 키를 눌렀을 때, 이전화면으로 가는 UX가 요구될 때가 있다. 그럴 경우, Android에서는 onBackPressed() 메소드를 오버라이드한다. 이와 비슷하게 Flutter에서는 WillPopScope의 onWillPop: 파라메터에 bool 값을 리턴하는 함수를 구현한다. false일 경우는 back key를 무력화하고 true일 경우는 back key를 앱에서 처리한다. WillPopScope( onWillPop: () async { //return false; 원하는 기능을 한다. //return true; 시스템의 backey를 처리하게 한다(화면종료) } child: ... } 2. 화면 메뉴 클릭 및 화면이..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/k2Ufu/btrHKnMDlfw/llBFHKhFAqrkcFmSbjI1K1/img.gif)
BottomNavigationBar를 통해 하단 버튼을 누르며 메인화면을 갱신하다보면 선택 화면이 표시된 후, 특정 작업을 수행해야 하는 경우가 종종 발생한다. 이럴경우, Flutter는 선언형 구조이기 때문에 Native 프로그래밍에 비해 불편한 부분이 있다. 그래서 Provider를 사용하여 코드를 깔금하게 정리하는 것을 권장되고 있다. - 화면갱신완료 시점 - provider로 데이터 처리 - 객체의 메소드 실행(권장하지 않지만 사용할 경우가 있다) - 화면갱신 완료시점 WidgetsBinding.instance.addPostFrameCallback()을 사용한다. 주로 stateful 위젯의 initState()에서 구현해준다. 저 함수의 파라메토로 종료시 실행될 콜백을 구현하면 된다. - pro..