[Flutter] 폰에 저장된 이미지 가져오기
·
Web & Android/Flutter
image_picker 설치와 셋팅 pubspec.yaml 파일에 코드 추가 후 pub get dependencies: image_picker: ^0.8.4+4 ios/Runner/info.plist 파일에 코드 추가 하단에 추가 사용자에게 허락 팝업 띄울 때 보이는 글자들 NSPhotoLibraryUsageDescription 사진첩좀 써도 됩니까 NSCameraUsageDescription 카메라좀 써도 됩니까 NSMicrophoneUsageDescription 마이크 권한좀 제발 dart 파일 맨 위에 import 추가 import 'package:image_picker/image_picker.dart'; import 'dart:io'; image_picker 사용법 onPressed: () asy..
[Flutter] 페이지 나누기 - 라우터 사용 (/)
·
Web & Android/Flutter
라우터 사용 (/) 페이지가 많은 경우 사용 라우터를 제대로 쓸 거면 패키지 설치해서 사용 → 깔끔한 문법으로 페이지 나누기 가능 웹 페이지처럼 페이지 단위로 나눌 수 있음 MaterialApp( initialRoute: '/', routes: { '/': (context) => Text('첫페이지'), '/detail': (context) => Text('둘째페이지'), }, ); Navigator.pushNamed(context, '/detail'); 버튼을 눌렀을 때 페이지 이동하게 만들고 싶은 경우 사용 라우터에 파라미터를 입력하고 싶은 경우 MaterialApp( initialRoute: '/', onGenerateRoute: (settings) { var arguments = settings...
[Flutter] 페이지 나누기 - Navigator
·
Web & Android/Flutter
Navigator.push() IconButton( icon: Icon(Icons.add_box_outlined), onPressed: (){ Navigator.push( context, MaterialPageRoute(builder: (context) => Text('안녕')), ); }, ), ⇒ 란? return 하나 밖에 없으면 중괄호와 return 동시에 생략 가능 (context) => Text('안녕') (context) { return Text('안녕'); } Navigator.pop(context); 현재 열린 페이지 닫아주기
[Flutter] 페이지 나누기 - Tab
·
Web & Android/Flutter
동적인 UI 만드는 법 1. 현재 UI의 현재 상태를 저장할 state를 만든다. 주의사항 : state 이므로 StatefulWidget으로 변경해야함! tab을 0으로 지정해놨기 때문에 tab이 0이면 0번탭, 1이면 1번탭으로 변경됨 → ‘홈’ 이렇게 지정해도 됨 class MyApp extends StatefulWidget { const MyApp({Key? key}) : super(key: key); @override State createState() => _MyAppState(); } class _MyAppState extends State { var tab = 0; (하단생략) 2. 그 state에 따라서 현재 UI가 어떻게 보일지 코드를 짜놓는다. body: [ Text('홈페이지'), ..
[Flutter] 스크롤 위치 파악하기
·
Web & Android/Flutter
💡 import ‘package:flutter/rendering.dart’; 사용 스크롤 위치 파악 게시물목록 ListView에 ScrollController() 부착하기 스크롤위치 계속 감시해주는 리스너 부착하기 맨 밑까지 스크롤하면 서버에 게시물 더 달라고 GET요청하기 데이터 가져오면 data라는 state에 추가해주기 → 스크롤 위치를 파악하고 싶으면 해당 위젯을 StatefulWidget으로 변경해야 함 → 부모가 보낸 state를 등록할 때는 위 class에 등록하고 사용은 아래 class에서 함 → 아래 class에서 위 class에 있는 변수를 사용할 때는 widget.변수명 사용 ScrollController 스크롤바 위치 기록해줌 ListView를 사용하면 controller: 라는 파..
[Flutter] http 패키지로 GET 요청
·
Web & Android/Flutter
http 패키지 설치 pubspec.yaml 에 http: ^0.13.4 추가 후 pub get 누르기 dependencies: http: ^0.13.4 main.dart 파일 들어가서 코드 추가 import 'package:http/http.dart' as http; import 'dart:convert'; dart:convert 이건 JSON -> 일반자료형 변환을 도와주는 함수모음집 android/app/src/main/AndroidManifest.xml _MyAppState(); } class _MyAppState extends State { var tab = 0; // 1. 현재 상태 저장 var list = [1, 2, 3]; var map = {'name':'john', 'age':20}; ..