[Flutter] Provider : store 여러개 & GET 요청
·
Web & Android/Flutter
store 여러 개 사용 class Store1 extends ChangeNotifier { var name = 'john kim'; } class Store2 extends ChangeNotifier { var follower = 0; follower 변경함수들~~ } store가 많은 경우 store 등록하는 법 MultiProvider( providers: [ ChangeNotifierProvider(create: (c) => Store1()), ChangeNotifierProvider(create: (c) => Store2()), ], child: MaterialApp( 어쩌구 ), ), Provider 사용 시 get 요청 두 가지 방법 Profile의 initState안에서 get요청 날리고 ..
[Flutter] 친구 팔로우 하기
·
Web & Android/Flutter
팔로우 버튼 누르면 +, - 하기 if문으로 팔로우 여부 확인 import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import './style.dart' as style; import 'package:http/http.dart' as http; import 'dart:convert'; import 'package:flutter/rendering.dart'; import 'package:image_picker/image_picker.dart'; import 'dart:io'; import 'package:shared_preferences/shared_preferences.dart'; import 'dart:conv..
[Flutter] Provider : 3-step 다른 방법
·
Web & Android/Flutter
3-step Provider 전송 없이 모든 위젯이 state를 직접 가져다 쓸 수 있게 만들어주는 패키지 패키지 설치 pubspec.yaml에 코드 추가 후 pub get dependencies: flutter: sdk: flutter provider: ^6.0.1 dart 파일에 import import 'package:provider/provider.dart'; Provider 사용법 state 보관하는 store 필요 class 생성해서 ChangeNotifier을 extends 하기 class Store1 extends ChangeNotifier { var name = 'john kim'; // state } store 등록 필요 store를 사용할 위젯들을 전부 ChangeNotifierPro..
[Flutter] 커스텀 페이지 전환 애니메이션
·
Web & Android/Flutter
종류 MaterialPageRoute() CupertinoPageRoute() 슬라이드 전환 import 'package:flutter/cupertino.dart' 상단에 추가해야함 PageRouteBuilder() 1. 전체 커스터마이징 MaterialPageRoute() 페이지 전환 애니메이션 GestureDetector( child: Text(widget.data[i]['user']), onTap: () { Navigator.push(context, MaterialPageRoute(builder: (c) => Profile()) ); }, ), CupertinoPageRoute() 오른쪽에서 왼쪽으로 보이는 애니메이션 GestureDetector( child: Text(widget.data[i]['..
[Flutter] 위젯 클릭 - GestureDetector
·
Web & Android/Flutter
GestureDetector onTap: (){ 한 번 누를시 실행할 코드 } onDoubleTap: (){ 더블탭시 실행할 코드 } onLongPress: (){ 길게누를시 실행할 코드 } onScaleStart: (){ 줌인시 실행할 코드 } onHorizontalDragStart: (){ 수평으로 드래그시 실행할 코드 } GestureDetector( child: Text(widget.data[i]['user']), onTap: () { Navigator.push(context, PageRouteBuilder(pageBuilder: (c, a1, a2) => Profile(), transitionsBuilder: (c, a1, a2, child) => FadeTransition(opacity: a1..
[Flutter] DB 없이 데이터 저장하기 - Shared preferences
·
Web & Android/Flutter
DB 없이 데이터 저장하기 ⇒ 중요한 건 DB 보관 ⇒ 덜 중요한 건 Shared preferences 보관 설치 셋팅 pubspec.yaml 파일에 추가 후 pub get 누르기 shared_preferences: ^2.0.11 패지키 사용할 파일 맨 위에 코드 추가 import 'package:shared_preferences/shared_preferences.dart'; import 'dart:convert'; shared preferences에 데이터 저장하는 법 SharedPreferences.getInstance() 이거 실행해야 저장소를 불러올 수 있고 setString('자료이름', '저장할자료') 쓰면 저장 saveData(){ var storage = await SharedPrefere..