분류 전체보기 (482) 썸네일형 리스트형 [flutter-16] 날씨 앱 만들기 Widget lifecycle(생명 주기) Stateless Widget : 한번 생성되면 절대로 바뀌지 않는 앱으로 새롭게 빌드해야 하는 위젯 새로 빌드 될 때는 build method에서 바꾸고자하는 값들을 넣어주면 됨 Stateful Widget : State 위젯에 따라 원할때마다 값들을 동적으로 변경할 수 있는 위젯 stateful은 stateless 위젯보다 긴 수명 생명주기를 가지며 보다 많은 생명주기 함수들을 가지게 됩니다. stateful 위젯의 대표적인 생명주기 위젯 initState method : 최초 생성 될때 호출되는 함수 builf method : 빌드 될때마다 호출되는 함수 dispose method, deactivate method : 파괴 될때 호출되는 함수 @overri.. [flutter-15] Future-async 심화 Thread 프로세스내에서 실행하는 흐름의 단위 Procees vs Program Photoshop은 하나의 프로그램이며 실행시키면 생명을 얻어 하나 이상의 프로세스를 가지게 됩니다. Process는 앱의 동작을 담당하는 역할을 가집니다. Event loop Dart는 싱글 스레드로 운영되는 언어이며 Flutter는 Dart를 기반으로 합니다. Event loop의 수행 방식 First In First Out 방식으로 "MicroTask와 Event"를 준비 main 함수 실행 Event loop 실행 MicroTask는 이벤트 큐로 넘어가기 전에 비동기적으로 실행되고 종료되는 작은 작업 단위입니다. 외적인 Event가 발생하면 순차적으로 큐에 등록하여 처리합니다. ex) gesture, drawing,.. [flutter-14] 반복문 - For loop 반복해서 같은 행위를 하도록 합니다. for loop 기본 형태 : C 언어에서 온 형태 for (int i = 0; i < 6; i++) { print('$i 번째 실행'); } for in loop 리스트에 담긴 데이터를 순차적으로 출력하는 방식 List rainbow = ['빨', '주', '노', '초', '파', '남', '보']; for(int i = 0; i < rainbow.length; i++ ){ print('$i' + rainbow[i]); } print('==========='); for(String s in rainbow) { print(s); } foreach loop for in loop와 동일하지만 foreach가 성능이 좀 더 좋다고 봄 rainbow.forEach((ele.. [flutter] android X 마이그레이션 flutter에서 마이그레이션 하나의 운영 환경에서 다른 운영 환경으로 이전을 의미함 android X는 기존 andorid에서 사용했던 라이브러리를 통합한 버전 android X로 마이그레이션 하기를 권장함 flutter 마이그레이션 하는 방법 dependencies를 pub get이나 cmd에서 flutter packages get을 이용해 다운로드 합니다. android에 있는 gradle.properties에 아래 2가지를 추가합니다. android.useAndroidX=true : android X 라이브러리를 사용하겠다는 의미입니다. android.enableJetifier=true : android X 프로젝트에서 사용할 수 있도록 자동으로 마이그레이션을 사용하겠다는 의미입니다. File-O.. [flutter-13] 로그인과 주사위 놀이 만들기(위젯 리팩토링, future, async, await) main.dart import 'package:flutter/material.dart'; import 'dice.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { // This widget is the root of your application. @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, title: 'Dice game', home: LogIn(), ); } } class LogIn extends StatefulWidget { @ove.. [flutter-12] Stateful widget State State란 UI가 변경되도록 영향을 미치는 데이터입니다. 앱 수준과 위젯 수준의 데이터가 구분됩니다. 앱의 상태를 바꾸는 모든 행위입니다. 1. Tree widget tree : 개발자가 관리하는 위젯으로 설계도 역할입니다. element tree : widget tree와 render tree를 연결하는 역할을 하며 flutter에 의해 관리 되는 tree 입니다. render tree : 실제 화면에 표출하는 역할을 하며 flutter에 의해 관리 되는 tree입니다. 2. Reload vs Rebuild Reload : 프레임은 그대로 두고 부수적인 것만 바꾸는 상태, 한번 생성되고 바꾸려면 일부만 변경합니다. Rebuild : 프레임도 바꾸고 부수적인것도 바꾸는 상태, 한번 생성되고 .. [flutter-11] Collection과 Generic 1. String interpolation(보간법) '$' 변수 값을 전달 받아 그대로 출력하는 용도로 사용합니다. main() { String name = "Test"; print("$name hi" ); } 2. Collection / Generic 데이터들을 모아서 가지고 있는 자료구조 Collection이 가지고 있는 데이터들의 데이터 타입을 지정 List fixed-length list : 용량 제한 growable list : 용량 무제한 main() { String name = "Test"; print("$name hi" ); List num = new List(); // dynamic은 모든 형태를 받을 수 있는 자료형 // List num = new List(); // in.. [flutter-10] Navigator : MaterialPageroute, initialRoute MaterialPageroute 1. Router 개념 단순히 스마트폰에서 보이는 하나의 페이지나 화면을 의미합니다. 2. Navigator의 정의와 push, pop 함수, stack 자료 구조 Navigator의 정의는 모든 앱 페이지를 스택 자료 구조로 Route 객체를 관리하고 있는 기능입니다. Stack은 어떤 물건을 쌓아 올린다는 개념으로 LIFO 후입선출의 자료구조로 나중에 들어온걸 먼저 내보냅니다. 최초 페이지 위에 다음 페이지가 쌓이고 다음 페이지 위에 다다음 페이지가 쌓이는 형태입니다. push : 데이터를 쌓는 기능 pop : 데이터를 내보내는 기능 3. MaterialPageroute 위젯과 context return 하는 모든 Scaffold와 같은 위젯이 Router라고 볼 수 .. 이전 1 ··· 27 28 29 30 31 32 33 ··· 61 다음