본문 바로가기

개발 Note/Dart,Flutter

(23)
[Flutter] 2024년 새해 계획을 위해서 Todo 앱을 만들어 봤습니다. 안녕하세요. 2024년 용띠해가 되었네요. 많은 일들이 잘 되길 빕니다.~ 스터디는 원래 실전이 가장 좋은 방법이라고 하죠?, 저도 Flutter 스터디를 위해서 2가지 프로젝트를 예전부터 진행했었습니다. 하나는 게임을 한번 만들어보는 것이고, 하나는 집에서 가족들과 사용할 수 있는 애플리케이션을 만들어보는 거였는데요. 그중 하나인 Pocket A 라는 애플리케이션입니다. https://play.google.com/store/apps/details?id=com.rjlife.pocketa 포켓 - Google Play 앱 할일을 기록하고 실천해보세요. 나의 루틴을 관리하고 , Chat GPT, Dall-E 로 멋진 라이프 스타일을 만들어 보세요. play.google.com 이 애플리케이션은 "아내가 집에..
[Flutter] ListView 를 SingleChildScrollView 에서 사용하기 안녕하세요. SingleChildScrollView 를 이용해서 아이템들을 스크롤 하도록 ui를 구성하려고 할때 간혹 ListView 나 grid view 같은 항목을 추가 해야 할 때가 있습니다. ListView나 GridView 같은 경우에는 크기를 지정해야 하는데, 이렇게 되면 2중으로 scroll되게 됩니다. (물론 이런 UI를 원하는 경우도 있지만, 때로는 전체가 하나의 view 처럼 scroll되기를 기대하는 경우도 있습니다.) 하나의 View 처럼 스크롤 되게 하려면 ListView의 속성을 변경해줘야 합니다. [Widget layout] Scaffold - SingleChildScrollView - Column - CalendarTimeline - ListView - BottomNaviga..
[Flutter] 빌드시 플렛폼 추가하기 안녕하세요. 플러터로 android 용 앱을 개발하다가 앱이 좀 괜찮으면 iOS로 확장하고 싶은 욕구가 생기겠죠? 그런데 처음부터 iOS를 염두해두고 프로젝트를 만들지 않았다면, 확장을 어떻게 해야 하나 할겁니다. 간단하게 확장하는 방법 정리 해봤습니다. 먼저 빌드할 플랫폼을 선택합니다. terminal에서 다음과 같이 입력하면 되는데요. $ flutter config --enable- ios 의 경우에는 flutter config --enable-ios 라고 입력 합니다. 그리고 나서 프로젝트를 재 생성 합니다. $ flutter create . 을 입력하면 다시 프로젝트가 재 생성됩니다. 사용 예 ) ~/$ flutter config --enable-ios Setting "enable-ios" val..
[Flutter] 디버깅용 print : dprint 안녕하세요. 코딩을 하다보면 종종 print를 이용해서 실행(run)창에 로그를 출력하는 경우들이 종종 발생하게 되는데요. 이럴때 file 정보와 line 정보가 안보여서 불편할때가 있습니다. 요럴때 사용할 수 있는 팁입니다.!! import 'package:flutter/foundation.dart'; dprint(message,{int level=1}){ if(kDebugMode || level >1) { var a = StackTrace.current; final regexCodeLine = RegExp(r" (\(.*\))$"); print("$message${regexCodeLine.stringMatch(a.toString().split("\n")[level])}"); } } @override ..
[Flutter] flutter 3.7 google map 버그 (frame이 남아있는 문제) - 2 (해결) 안녕하세요. Flutter Bug에 대한 해결책을 정리해볼까 합니다. https://spikez.tistory.com/456 [Flutter] flutter 3.7 google map 버그 (frame이 남아있는 문제) (2023년1월28일) 어제 시간이 좀 나서 flutter 3.2 버전으로 개발 진행해오던 프로젝트를 3.7로 업그레이드 해봤습니다. 아.. 뭔가 달라진게 있는지 custom 으로 작성한 theme 쪽에서 deprecated 된 것이 보이 spikez.tistory.com 일단 문제는 위 링크에 있는 내용인데요. 화면전환시에 한프래임이 남아서 화면전환을 어색하게 만듭니다. google map을 dispose 시키기 위해서 여러가지 방법을 사용해봤는데, 방법을 찾지 못하다가, 문제 올린 링..
[Flutter] Flutter로 Chat GPT client 만들기 Pocket A https://play.google.com/store/apps/details?id=com.rjlife.pocketa&pli=1 Pocket A - Google Play 앱 Chat GPT와 Dall-E 를 활용할 수 있는 AI 어플리케이션입니다. play.google.com Chat GPT Client 만들기 Chat GPT client 를 만들어서 사용해보기 위해서 만들어보았습니다. 어플리케이션 개발 목적은, flutter 스터디도 있지만, Chat GPT와 같은 대화형 AI 를 다루는 클라이언트(client, application)은 어떻게 만드는 것이 좋을까 고민 해보는 것도 좋을것 같아서 시작하게 되었 습니다. 먼저 어플리케이션의 기능 구성을 다음과 같이 고민해봤습니다. - cha..
[Flutter] Googlemap geocoding Flutter 에서 구글맵을 사용할때 2가지 패키지를 추가해서 사용합니다. google_maps_flutter: ^2.2.3 geocoding: ^2.0.5 google map 사용방법은 google cloud service에서 api key를 발급 받고 사용해야합니다. 클라우드 설정이 끝나고 Goecoding을 사용하는 방법은 매우 간단합니다. Geo Coding geocoding, GeoCode, geocoder등의 용어는 주소를 위도, 경도로 변환하거나 위도,경도로 주소를 넘겨받는 기능을 의미하는 표현으로 많이 사용됩니다. 주소로 위도, 경도를 받아올때 List locations = await locationFromAddress(address); Location location = locations..
[Flutter] Googlemap 사용하기, pinch zoom, gesture 처리 어플리케이션 개발시에 google map을 사용해야 하는 경우 종종 있는데요. google map 사용시 한가지 불편한 부분에 대한 팁입니다. pubspec.yaml google_maps_flutter: ^2.2.3 GoogleMap( mapType: MapType.normal, mapToolbarEnabled: false, zoomControlsEnabled: false, myLocationEnabled: true, trafficEnabled: false, gestureRecognizers:{ Factory(() => EagerGestureRecognizer()) }, markers: {Marker(markerId: MarkerId("위치"),position: controller.location.toL..