조금 매운맛 Provider 입문 1: Provider와 State management 예시) 물고기 잡는 남자1 물고기 키우는 남자가 있었는데 이 남자는 산 중턱에서 양식을 했음 그러다가 자연스래 매운탕집을 했는데 생선만 납품하는게 더 이득이었음 그래서 주변에 매운탕집을 유치하고 양식한 물고기들을 주변 매운탕 집으로 납품을 했는데, 가장 멀리 있는 매운탕집이 1마리만 주문해도 몇십분을 가서 배달해야하니 너무 비효율적이었다. Provider 1. flutter dev 공식 추천 2. 가장 보편적 3. provider를 통한 riverpd와 연계 State 1. UI에 변화가 생기도록 영향을 미치는 데이터 2. 앱 수준의 데이터 > 서버와 연동해서 데이터를 끌어오는 등 앱화면에 변화를 일으키는 모든 데이터..
조금 매운맛 25 스트림과 파이어베이스 Stream : 한번에 원하는 데이터를 받고 끝나는 것이 아니라 지속적으로 들어오는 데이터를 기다렸다 받아야할때 사용 (int를 예시로 사용) 즉시 사용가능 기다려야 사용가능 예시 기다려야 사용가능 설명 단일 데이터 int Future int, string 등 일반 데이터 - async 방식 - 전달되면 즉시 사용 가능 복수 데이터 List Stream List - 언제라도 int 데이터가 Stream에 전달 가능 - Stream을 subscribe(구독)하고 있다면 Stream에 데이터가 전달될때마다 즉시 알수 있음 > 채팅앱에서는 상대방이 언제 채팅을 칠지 모름 > 그래서 stream 사용해야 함 > StreamBuilder 위젯 : stream으로 전달되는 데..
조금 매운맛 23 파이어베이스 연동하기 1. 파이어베이스 홈페이지 Firebase Firebase는 고품질 앱을 빠르게 개발하고 비즈니스를 성장시키는 데 도움이 되는 Google의 모바일 플랫폼입니다. firebase.google.com 2. 콘솔로 이동 3. 프로젝트 만들기 4. 프로젝트명 5. 그냥 두고 다음 6. 대한민국 선택 7. 웹콘솔에서 안드로이드앱 8. 앱등록 (* 안드로이드 스튜디오) 9. 파일 다운로드 후 안드로이드 앱 폴더에 넣기 (*안드스튜디오) 10. firebase SDK 설치 (* 안드스튜디오) > (안드로이드-앱-빌드그레이들아님!!!!!!) 11. 설정 끝 12. 플러터 파이어베이스 패키지 설치 : flutter firebase firestore https://pub.dev/p..
조금 매운맛 20 채팅앱 UI 디자인 pt1,2 따로 이렇게 만들어주기 삼항조건연산자 !isSingupScreen ? Palette.activeColor : Palette.textColor1, > 로그인 화면이 선택 됐을 때 activeColor 보여주고 아니면 textColor1 보여주기 inline if - dart 2.3 이상 도입 - 한 컬렉션(column 위젯 내 list 요소) 안에서 어떤 예외적인 조건을 쉽고 명확하게 지정할 수 있는 기능 signup 스크린이 선택되지 않은 상태에서만 밑줄을 위한 컨테이너를 그림 UI 완성본 및 전체코드 더보기 //palette.dart import 'package:flutter/painting.dart'; class Palette{ static const ..
조금 매운맛 18 플러터 키 이해하기 What ar the keys? 1. 위젯이 위젯트리 상에서 이동을 하는 과정에서 위젯의 State를 보존하기 위해서 2. 위젯이나 요소들을 유니크하게 식별해주는 역할 위젯 수준의 state는 UI가 변경되도록 영향을 미치는 데이터 위젯이 위젯트리상에서 이동한다는 의미 > 투두리스트 앱을 예시로 List의 제일 첫번재 인덱스 0번을 가진 Item 3이 5,6 사이로 이동했다고 해서 Item 3번 인덱스가 변하거나 하지 않음 > 이 때 같은 타입의 위젯들에게 Key 값을 부여해서 플러터가 식별하도록 만들어줌 * 기본적으로 플러터 프레임워크에서 제공해주는 위젯들은 빌드 타임 시 키를 부여받게 됨. > statefulwidget 생성시 자동으로 key가 생성된 것을 볼 수..
애뮬레이터가 오류나서 안드로이드 스튜디오를 껐다가 다시 키는 과정에서 아예 main.dart가 작동되지 않는 오류가 발생했다. 스택오버플로우에서 가져온 이미지지만 나도 main.dart를 실행하려고 하면 계속 이런 오류창이 떴다. 강의를 따라서 진행하다가 오류가 생겼고 구글링 결과 flutter upgrade를 진행했었다. 그리고 나서 안드로이드스튜디오를 껐다 켰고 이후 계속 같은 에러가 발생했다. 그럼 다음과 같이 순서대로 해결해 볼 수 있다. 방법 1. 먼저 flutter doctor 실행해서 버전과 설치 된 것들 확인 > 업그레이드가 안 되어 있다면 upgrade 하기 > 업그레이드를 했다면 다시한번 flutter doctor 로 체크하기 나는 이때 다음과 같이 에러가 다시! 또! 발생했다. Win..