본문 바로가기

study

(80)
플러터(flutter) 로그아웃, 회원탈퇴(모든페이지 위젯 저거 후 첫 페이지 위젯으로 이동하기 -pushNamedAndRemoveUntil // 회원 탈퇴 시 기존 스택에 쌓아둔 페이지 다 날리고 메인 화면으로 이동 Navigator.of(context).pushAndRemoveUntil( CupertinoPageRoute(builder: (context) => MyApp()), (route) => false); } 로그아웃 및 회원탈퇴 처럼 페이지를 첫 페이지로 이동시킬때 사용한다. 첫 페이지 위젝으로 이동하면서 연결된 모든 위젯 트리리를 삭제시키고 첫 페이지로 이동한다. 즉, 쉽게말해 push해온 페이지들을 전체적으로 pop시킴
adb Logcat 사용 1. adb 다운로드 https://developer.android.com/studio/releases/platform-tools?hl=ko SDK 플랫폼 도구 출시 노트 | Android 개발자 | Android Developers Android SDK 플랫폼 도구는 Android SDK의 구성요소입니다. developer.android.com 2. 원하는 경로에 압축 해제 ex) C:\tools\platform-tools 3. 환경변수 설정 시스템 변수 Path 편집 새로만든 후 adb 경로 추가 4. 휴대폰 USB디버깅 활성화 설정 -> 개발자옵션 -> USB디버깅 활성화 5. CMD 접속 1) adb shell 을 통해 쉘로 이동 2) pidof [안드로이드 패키지명] 입력 3) 패키지 pid를 ..
플러터(flutter) 카카오 주소 API사용 - pubspec.yaml 파일에 패키지 추가 - 주소 텍스트 or 주소 텍스트필드를 터치시 카카오 주소 API로 이동(GestureDetector의 onTap 이용) - _addressAPI() 가 카카오 주소 API 함수 - 앱을 실행시켜보면 잘 작동하는것을 볼 수 있음 - 전체 소스코드 import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:remedi_kopo/remedi_kopo.dart'; void main() { runApp(const MyApp()); } class MyApp extends Statele..
플러터(flutter) 비동기에서 퓨처함수 한번만 실행하기(asyncMemoizer.runOnce()) asyncMemoizer.runOnce()를 이용하면 stateful 위젯에서 변경이 생겻을 때만 변화가 일어난다. 변경이 생기지 않았을때는 기존 로컬에 있는 데이터를 가져와서 기존 데이터를 뿌려주기 때문에 성능에 좋다. 만약 asyncMemoizer.runOnce()를 사용하지 않으면 stateful 상황에서 변화가 생기든 생기지 않든 다시 build를 실행해 기존에 있던 데이터가 아닌 다시 데이터를 가져옴으로 성능에 좋지 않다. Future를 이용한 함수를 사용할때에는 FutureBuilder 위젯을 사용한다. FutureBuilder 위젯을 사용할때에는 builder: 와 future: 속성이 들어가야한다. builder: 부분엔 UI관련 future: 부분엔 Future 함수를 이용한 함수를 넣으..
플러터(flutter) TextField 밑줄 텍스트랑 가까이 붙히기(isDense:) TextField의 isDense의 값이 true일 때에는 텍스트와 밑줄 사이의 간격이 좁다. TextField의 isDense의 값이 false일 때에는 테긋트와 밑줄 사이의 간격이 ture에 비해 넓다. TextField의 isDense 값이 true일 때 TextField의 isDense 값이 false일 때
플러터(flutter) BottomSheet 날짜 선택 pubspec.yaml 파일에 패키지추가 패키지 import 전체 소스코드 import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:intl/intl.dart'; // Date Format 사용시 사용하는 패키지 void main() { runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); // This widget is the root of your application. @overr..
플러터(flutter) TextField 초기값 설정 set text 1. 아래와 같이 Controller 안에 text를 지정해주면 2. text field에 컨트롤러 연결 3. 앱 확인 위 사진과 같이 잘 초기값 셋팅이 되며 데이터베이스에도 잘 들어감
플러터(flutter) firestore 데이터 Delete 메인함수에 flutterbinding, firebase initializeapp 추가 // Create // import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:flutter/material.dart'; class MakePostPage extends StatefulWidget { const MakePostPage({Key? key}) : super(key: key); @override _MakePostPageState createState() => _MakePostPageState(); } class _MakePostPageState extends State { // 파이어베이스 스토어 인스턴스 생성 FirebaseFiresto..