목록전체 글 (369)
seong

PopScope이란? - 기존에는 WillPopScope를 사용 했지만 v3.12.0-1.0.pre 버전 이후로는 사용되지 않고, PopScope를 사용을 권장한다. 자세한 내용은 아래 페이지에서 확인이 가능하다. WillPopScope : https://api.flutter.dev/flutter/widgets/WillPopScope-class.html PopScope : https://api.flutter.dev/flutter/widgets/PopScope-class.html - 기기를 사용할 때 의도치 않게 뒤로가기 버튼을 누를 경우가 있다. 이럴 경우 만약 데이터를 가지고 있다가 의도치 않게 뒤로가기를 눌러 페이지가 초기화 되는 경우를 막아주는 역할을 한다. 사용법 Scaffold PopScope로..

Terminal 에서 아래 명령어들 입력 최초에는 실 기기와 유선으로 연결이 되어 있어야함. 1. adb devices - adb device가 연결 되어 있는 기기 확인 2. adb tcpip 5555 - port를 5555로 사용 3. adb connect "wifi Ip 주소":"port" - ex) adb connect 192.168.*.*:5555 아래 처럼 연결 되어 있는 표시가 나오면 완료
Flutter의 주요 Constraints는 3가지와 한계점으로 정리를 할 수 있다. 1. Constraints go down - 위젯은 제약조건을 부모 위젯으로 부터 전달 받는다. - min/max width, min/max height 4가지가 존재 2. Size Go up - 부모 위젯은 children에게 제약조건을 알려주고, child에게 size를 물어본 후 차례대로 배치 한다. 3. Parent sets position - 제약 조건을 받아온 부모 위젯에게 size를 알려준다. 한계점 1. 부모 위젯의 제약조건 내에서만 자식 위젯의 크기가 조정이 가능하다. 2. 위젯트리가 존재하기 때문에 부모 위젯 또한 상위 부모위젯의 제약조건을 벗어날 수 없다, 즉 위젯 트리를 고려 하지않은 채로는 자식 ..
Flutter doctor에서 아래와 같은 에러 해결하기 Xcode end user license agreement not signed; open Xcode or run the command 'sudo xcodebuild -license'. 해결 방법 1. sudo xcodebuild -license 2. Enter 3. q 입력 4. agree 입력

보통 MediaQuery로 크기를 구성하지만 가끔은 다른 기기로 빌드 시 원치 않은 크기가 나오기도 한다. 그렇다고 width,height를 정해두자니 기기별로 모두 대응을 해주어야 하는 불편한 점이 있다. ScreenUtil는 이러한 불편한 점을 고민 안해도 되게 깔끔하게 해결해 주었다. 사용법 1. 라이브러리 설치 https://pub.dev/packages/flutter_screenutil/install flutter_screenutil | Flutter Package A flutter plugin for adapting screen and font size.Guaranteed to look good on different models pub.dev 복사한 flutter_screenutil: ^5...

TabBar는 Controller가 필수 요소이다. Controller를 정의 하는데는 DefaultController, TabController 두가지 방식이 있다. TabController는 사용자가 직접 커스텀 해 Animate, 세세한 동작을 직접 정의해서 컨트롤 할때 사용한다. 소스코드 TabController를 직접 커스텀 하기 위해 TickerProviderStateMixin을 상속받아주어야한다. initState 메서드를 통해 위젯이 build되기 전에 tabController를 초기화 시켜준다. length : 3 // Tab의 갯수이며, Tab의 갯수와 일치 시켜주어야 한다. vsync : this // TickProvider를 위젯과 동기화 시키기 위해 사용 animationDurat..

Google font를 적용하는 방법은 두가지가 있다. 1. 폰트를 다운 받은 후 적용 2. pub.dev에서 Google fonts 라이브러리를 활용한 적용 폰트를 다운 받은 후 적용 하는 방법 1. Google Fonts 사이트에 들어가서 마음에 드는 폰트 설치 Browse Fonts - Google Fonts Making the web more beautiful, fast, and open through great typography fonts.google.com 2. 프로젝트 최상위 폴더에 assets/google_fonts 생성 ( 폴더 이름 상관 x ) 3. pubspec.yaml 파일에 아래 처럼 fonts의 경로를 추가 family는 아무거나 써도 되지만 웬만해선 font이름과 같게 사용하..

1. 아래 링크 회원 가입 및 APIKey발급 https://openweathermap.org/ 2. API와 통신을 위해 http_connect 생성 - 싱글톤 패턴을 사용해 중복된 인스턴스를 사용하지 못하도록 방지 - API 요청할 주소 : "http://api.openweathermap.org/data/2.5/weather?lat=$lat&lon=$lon&appid=$_apiKey&units=metric" - path를 uri 타입에 맞게 파싱하여 get요청 - 응답받은 Json String -> Dart에서 다룰 수 있게 Json자료형(Map)으로 변환 해서 넘겨준다. class HttpConnector { // 싱글톤 패턴 사용 static final HttpConnector _instance ..