조금 매운맛 6 final과 const 변수 완벽하게 이해하기 변수는 항상 변할 수 있음 = mutable한 속성을 가진다. final / const final 변수 : 단 한번만 설정할 수 있다. const 변수 : 컴파일 시 상수가 된다. - final와 const를 모두 modifier 제어자라고 한다. 제어자란 클래스, 변수, 메소드를 정의할 때 함께 쓰여서 옵션을 정해주는 역할 예) 접근제어자 = 클래스, 변수, 메소드에 접근을 제안하는 역할\ - 일단 변수값이 한번 초기화 되면 바꿀수 없음. = immutable 1) finla 변수 초기화 하는 방법 1: 변수 선언시 초기화 (예) 바로 위 그림 '에러 뜸' 참조) 초기화 하는 방법 2: 객체 생성 시 외부 데이터를 받아 생성자를 통해서 초기..
조금 매운맛 1 Stateful widget pt 1 State : 방에 어떤 가구들이 배치된 상태로 쭉 유지되고 있는 것. 0.1%로라도 가구의 배치가 바뀌게 되면 다시는 이전 배치로 돌아갈수 없음 - State는 데이터이다? - State란 UI가 변경되도록 영향을 미치는 데이터이다. - App 수준과 Widget 수준의 데이터가 있다. App 수준의 데이터 : 우리가 아는 일반적이 데이터에 가까움. 예시로 사용자 인증, 서버에 저장된 데이터를 가져오는 것 Widget 수준의 데이터 : Ratio 버튼을 선택 했느냐 안했느냐, Textfield에 텍스트가 입력됐는지 안 됐는지 등 행위. 즉, App의 상태를 바꾸는 모든 행위 Stateless widget - State가 변하지 않는 위젯 = 객체화된..
순한맛 시즌2-3 리스트뷰(ListView)에서 데이터 전달하고 페이지 이동하기 - Generate : length의 길이만큼 0부터 인덱스-1까지의 범위에 각 인덱스를 오름차순으로 호출해서 만든 값으로 리스트 생성 예시1) int 타입 3개를 호출함. 0, 1, 2. 그런데 이 호출한 값을 index * index 하고 출력하라는 조건이 주어져서 해당 식을 수행한 후 출력 결과 = 0, 1, 4 - LikeButton like_button | Flutter Package Like Button is a flutter library that allows you to create a button with animation effects similar to Twitter's heart when you like..
순한맛 시즌2-2 리스트뷰 빌더(ListView builder)와 다이어로그(Dialog) 팝업창 띄우기 - GestureDetector : 제스처 기능을 지원하지 않는 위젯을 이것으로 감싸면 onTap 메서드로 제스터 기능 사용가능하게 해주는 위젯 + Inkwell 위젯도 같은 기능을 함. 하지만 잉크가 퍼지는듯한 애니메이션이 조금 다름 - Card class - ListView에 나올 card들의 크기를 지정할 때, Container / SizedBox 두 가지를 사용할 수 있음. Container를 써도 무방하지만 Container 위젯은 컬러, 패딩, 데코레이션 등 다양한 것들을 지정할 수 있기 때문에 크기 조절만 할 거라면 SizedBox가 좋음. SizedBox는 사이즈 지정하는 것 외에 아무..
순한맛 시즌2-1 플러터 온보딩 스크린(Flutter Onboarding screen) 만들기 - Onboarding screen 온보딩 스크린 : 앱 시작 시, 제일 처음 사용법을 담은 introduction 페이지들과 같은걸 on-boarding screen 무료 이미지 제공 사이트 Free Vectors, Stock Photos & PSD Downloads | Freepik Millions of Free Graphic Resources. ✓ Vectors ✓ Stock Photos ✓ PSD ✓ Icons ✓ All that you need for your Creative Projects. #freepik www.freepik.com const : 한번 정해지면 바뀌지 않는 데이터를 사용하는 위젯 ..
순한맛 26 패치강좌 1 플러터 2.0 Snack bar와 ScaffoldMessenger - Why ScaffoldMessenger? 기존 Scaffold 위젯 ▲ Center 위젯 ▲ FlatButtond 위젯 ▲ Scaffold.of(Context) > Scaffold. 메소드가 의미하는 건 현재의 BuildContext에서 위로 거슬러 올라가며 가장 가까운 Scaffold 찾아서 반환 하지만 Scaffold. 메소드가 가지고 있는 현재의 Context로는 찾을수가 없었음 그래서 Builder 위젯을 만들어서 새로운 Context를 Scaffold. 메소드가 전달받게 한 후, 그 위치부터 Scaffold 위치를 찾아나서게 함 이 때 생기는 문제점 > 주문확인 페이지에서 구현된 Snackbar는 주문..