폼(Form)이란?폼이란 사용자에게 데이터를 입력받는 화면을 만드는 위젯, 사용자가 입력한 데이터의 유효성 검증, 데이터 관리 가능TextField, TextFormField 차이점TextField: 사용자 입력받기 위한 Widget classTextFormField:
Flutter 기본 위젯 활용하기TIL 작성Flutter 애셋 활용(이미지 넣기)image 디레터리 생성이미지 파일을 image 디렉터리에 넣기pubspec.yaml 파일에서 flutter 아래 assets에 애셋 파일 등록 main.dart파일에 코드 작성만약 이미
1\. Flutter 기본 파일 분석 Flutter in Action.pdf(일영 OneDrive -> 도서관)3장 파트(분석) 번역기 적극 활용, 기간(7/31 ~ 8/6)2\. 일영 동아리 사이트 Flutter Blog PostFlutter 기본 파일 분석한 내용
모두 사용자에게 데이터를 입력받는 위젯체크박스는 사용자에게 true나 false를 입력받는 위젯이다. value 속성으로 체크박스의 값을 설정, onChanged 속성으로 상태 변경 시 호출할 이벤트 콜백라디오 버튼은 true나 false를 압력받는 위젯이다. 여러 항
텍스트 필드란?텍스트 필드(TextField)는 사용자에게 글을 입력받는 위젯텍스트 필드 예시입력된 데이터 얻기 - TextEditingController텍스트 필드에 입력된 데이터 획득, 변경 이벤트 감지 등의 작업 가능텍스트 필드값 변경 감지 방법꾸미기 - Inpu
HEAD~1은 바로 직전 commit 수정, 만약 더 과거의 commit 수정 시 HEAD~2,3,4,5...아직 commit message 변경 x주의!!!force는 원격 저장소의 commit들이 유실될 수 있어 최대한 지양해야 한다. 원격 저장소를 다른 인원들과
2023-07-14vs code에서 마크다운 미리보기가 안됨extension에서 auto-opne markdown preview 설치FLutter main.dart파일을 제외한 나머지 파일에서 실행을 하고 싶다 해결 방법: 파일 생성 main.dart파일에서 M
화면의 영역을 표현하는 위젯영역의 margin, border, padding 지정 가능margin은 위젯과 위젯 간격border은 위젯의 테두리padding은 위젯 테두리와 위젯에 출력되는 콘텐츠와의 간격margin,padding
한이음 프로젝트 ppt 제작Flutter (이미지 위젯, 아이콘과 아이콘 버튼, 제스처 감지기와 엘리베이트 버튼, 컨테이너와 센터 위젯)한이음 프로젝트 ppt 제작(어느정도 완료)
세로나 가로로 나열하면서 화면을 벗어날 때 스크롤을 지원하기 위해 사용한다.스크롤 기능scrollDirection 속성을 Axis.horizontal,vertical 사용기능은 같지만 쓰이는 용도가 다릅니다. ListView는 똑같은 형태의 위젯을 세로로 출력에 최적화
그리드 뷰란?항목을 나열한다는 면에서 리스트 뷰와 같지만 가로, 세로 방향으로 나열하지 않고 한 줄에 여러 개를 함께 나열할 수 있습니다.GridView.builder() 생성자 제공(itemCount(항목 개수), itemBuilder(위젯 지정)속성)gridDele
페이지 뷰란?페이지 뷰는 리스트 뷰와, 그리드 뷰와 같이 항목을 나열하는 위젯이다. 차이점은 항목을 하나만 보여주며 왼쪽, 오른쪽으로 밀면 차례로 하나씩 위젯이 나오게 된다.PageView의 children에 여러 위젯을 지정한다.PageController 객체에 맨
다이얼로그를 띄우려면 AlertDialog 사용showDialog( ) 호출 -> builder 속성에 지정한 함수에서 AlertDialog 객체 반환showDialog() - barrierDismissible 은 다이얼로그 바깥을 터치했을 때 닫히는 여부 결정(tru
화면을 구성하는 위젯이다. 탭 버튼을 누르면 그에 대응하는 화면이 출력된다.TabBar 위젯으로 탭 버튼을 구성 후 TabBarView 위젯으로 탭 화면을 만든다.TabBar 버튼을 눌렀을때 TabBarView에 나오는 화면은 TabController가 자동으로 처리한
late는 non-nullable변수의 초기화를 나중에 할 수 있게 해주는 변수다.그렇다면 그냥 처음에 nullable로 선언을 한 후 나중에 그냥 원하는 값으로 초기화 해주면 되잖아? 라고 물을 수 있다.late를 사용하는 이유는 이 변수가 null값이 되면 안 된다
머티리얼 디자인을 적용하는 위젯이다. -> 안드로이드 앱타이틀, 테마, 라우팅 정보 등을 설정 가능하다.화면 오른쪽 위에 DEBUG라는 배너 출력 설정 debugShowCheckedModeBanner: false -> 안나옴기본 색상 설정 가능(Default는 blue
Cupertino는 iOS를 만든 애플의 디자인이다.쿠퍼티노 디자인 적용 예시앱이 동작하는 플랫폼을 인식 가능(dart:io에서 제공하는 Platform 이용)isAndroid: 안드로이드 식별isFuchsia: 푸크시아 식별isIOS: iOS 식별isLinux: 리눅
기기의 모양이 다양하다 보니 앱의 화면이 정상으로 출력되지 않을 수 있다. -> SafeAreaSafeArea -> 화면에 출력할 내용을 콘텐츠를 정상으로 출력할 수 있게 알아서 조정해준다.
스캐폴드(Scaffold) 는 앱 화면의 골격을 제공하는 위젯이다.appBar: 앱 상단 구성body: 앱 본문 구성floatingActionButton: 화면에서 떠 있는 듯한 둥근 버튼 구성drawer: 가로로 열리는 콘텐츠 구성bottomNavigationBar:
CustomScrollView 한 영역에서 스크롤이 발생할 때 다른 영역도 함께 스크롤되게 한다.SliverListSliverFixedExtentListSliverGridSliverAppBarSliverList와 SliverGrid로 화면을 구성하고, SliverApp
화면 전환을 제공하려면 Route와 Navigator를 사용한다.Route는 화면을 지칭하는 객체이다.Navigator는 Route 객체로 화면을 전환해 준다.다음 화면으로 전환: Navigator.push()이전 화면으로 전환: Navigator.pop()push함수
Navigator는 라우트 객체를 스택 구조로 관리한다.만약에 이미 화면이 출력돼 스택에 있는 위젯을 다시 push한다면?맨 위에 다시 객체가 생성되어 스택이 쌓인다.mybePop( )과 canPop( )pop( ) 함수는 스택에서 위젯을 제거하고 이전 화면으로 돌아간
Flutter in Action이라는 책에서 element 부분을 공부했다.코드를 수정하고 다시 실행하면 build함수가 재호출되기 때문에 위젯들이 없어졌다 다시 생기는것이라고 생각할 수 있다. 히지만 아니다. 우리가 수정한 위젯, 즉 업데이트한 부분만 바뀌는 것이기
Flutter 기본 앱(카운터 앱) 분석
구글의 material 디자인 시스템 기본 위젯 제공main함수가 진입점runApp이라는 메서드로 최상위 위젯을 감싼다.MyApp은 StatelessWidget을 상속받고 있다.StatelessWidget: 정적이고 스스로 화면 업데이트가 불가능하다모든 위젯은 buil
이번 챕터에서는 Flutter의 내부와 외부를 소개할 예정이다. Flutter를 어떻게 사용하고 내부에서 어떻게 작동하는지 보여주고 기초를 다지는 것이 목표다.그에 대한 계획은 다음과 같다CLI로 새로운 Flutter 프로젝트를 시작할 때 생성되는 앱인 카운터 앱을 심
데이터를 표현하는데 사용되는 데이터 교환 형식이다키-값 쌍으로 구성, 사람과 기계 모두 이해 쉽다User라는 객체는 기기에 할당된 메모리에서만 유효한 데이터다.구조화된 방법이 필요한데, 이때 JSON을 가장 많이 사용한다.Map은 키-값 쌍으로 데이터를 저장하는 데이터
Hyper Text Transfer Protocol의 두문자어로, 인터넷에서 데이터를 주고받을 수 있는 프로토콜이다.프로토콜은 규칙이라고 생각하면 된다웹 브라우저와 웹 서버 간의 통신에 주로 사용http 패키지 추가하기 http 패키지 임포트import 'packag
왓챠피디아 클론 코딩 진행 중이다.현재 로그인 창 구현은 거의 끝났고 두 번째 화면 바텀 네비게이션 바 부분까지 끝난 상태다. 화요일까지 영화 부분 화면을 채울 예정이다.사용했던 개념들이 전에 학습한 내용이지만 실전에 적용시키려니 어려웠다. !현재까지 진행한 화면들이다
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
서버와 HTTP 통신할 때 http 패키지를 이용하는 방법이 있는데 더 많은 기능을 제공하는 패키지이다.pubspec.yaml 파일에 추가get() 함수를 호출하여 서버에 요청하며 결과는 Response 타입의 객체 response에 저장한다. response의 sta
왓챠피디아 클론 코딩 진행처음에는 크롤링과 스크래핑을 이용해 왓챠피디아 데이터를 가져올라고 했다. 둘 중에 고민을 하다가 크롤링으로 해보려다 실패했다. 그래서 일단 처음이니 화면을 내가 넣어보기로 했다.2번째 화면 클론 코딩을 하고 있다. 처음에는 상단에 영화, TV,
왓챠피디아 클론 코딩 진행영화 부분에서 가로 기준으로 한 줄을 클래스로 만들어서 클래스만 갖다 쓰면 되는 구조로 만들었다. 크롤링을 계속 시도해보고 있는데 아직 성공 못 했다.(내가 이미지를 넣기는 너무 귀찮고 코드도 길어져서 보기 안 좋다)
Tabbar 위젯 수정(appbar와 body 사이 경계선 없애기)아이폰으로 flutter 연결(개발자 모드 못 찾았다)기기마다 다른 크기 비율 조정(진행중)
Google이 디자인한 언어, Flutter에서 Dart를 사용하면 안드로이드와 iOS등과 같은 다양한 플랫폼에서 개발이 가능하다.Dart는 2개의 컴파일러를 가지고 있다Dart webDart → javascript (Transpiler) 웹에서 사용Dart Nativ
main 함수는 모든 Dart 프로그램의 Entry point(진입점)세미콜론 반드시 붙여야 한다(js나 typescript는 프로그램이 자동으로 달아준다)var명시적 지정(예: String, int)언제 무엇을 써야할까?var: 관습적으로 함수나 메소드 내부에 지역
Your First Dart Class Class란? !https://blog.kakaocdn.net/dn/bCVbli/btrwWhvFPEv/o1k0Fs4RJNNbGyCW7muHu1/img.png 구성: property, constructor, method
void는 아무 것도 return 하지 않는다함수가 한 줄 밖에 없을 때는 다음과 같이 fat arrow syntax 사용하면 된다.문자열 앞에 $ 표시함수 매개변수가 많을 때 사용한다(어떤 값이 어떤 매개변수를 가르키는지 헷갈린다)다음과 같은 방법으로 position
UI에 변화가 생기도록 영향을 미치는 데이터애플리케이션 내부의 데이터나 정보 \- 사용자 인터페이스(UI)의 상태일 수도 있고, 애플리케이션의 동작을 제어하는 데 필요한 다양한 데이터나 정보예) \- To-do 앱 \- 사용자가 추가한 할 일 목록이나 각
하나의 클래스가 둘 이상의 부모 클래스로부터 상속 받는 행위지원하는 언어: C++, Python지원하지 않는 언어: Dart, C다이아몬드 문제Father, Mother 클래스는 Person 클래스를 상속 받고 Child 클래스는 Father, Mother 클래스를 상
결제 완료 후 주문 배송 조회 화면으로 이동하는데 첫 번째 주문은 정상적으로 조회가 되는 것으로 확인이 되지만 두 번째 주문부터는 최신 주문 조회가 즉시 되지 않고, 앱을 hot restart 해야 정상 작동하는 현상 발생에러 상황 재현 방법결제 완료 후, 주문 배송