| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- android retrofit login
- 자바 다형성
- 안드로이드 라이선스
- 2022 플러터 안드로이드 스튜디오
- 컴포즈 네비게이션3
- 네비게이션3
- 2022 플러터 설치
- 안드로이드 유닛 테스트 예시
- navigation3
- 스택 자바 코드
- ar vr 차이
- 클래스
- 안드로이드 레트로핏 crud
- nav3
- 서비스 vs 쓰레드
- ANR이란
- android ar 개발
- Rxjava Observable
- 객체
- rxjava cold observable
- 안드로이드 레트로핏 사용법
- 서비스 쓰레드 차이
- compose navigation3
- rxjava disposable
- 스택 큐 차이
- 큐 자바 코드
- rxjava hot observable
- 플러터 설치 2022
- 멤버변수
- 안드로이드 라이선스 종류
- Today
- Total
목록Flutter (38)
나만을 위한 블로그
플러터 앱을 만들 때 상태 관리는 필수다. setState로 가능하지만 이 함수는 앱 전체 상태를 관리하기에는 한계가 있다.setState의 한계는 아래와 같다. 상태가 위젯 안에 있어서 상태가 위젯 생명주기에 종속됨. 화면이 사라지면 상태도 같이 사라지기 때문에 다른 화면에서 같은 상태를 사용하기도 어려움부모 > 자식 > 자식2-버튼 같이 여러 위젯 간에 상태를 공유해야 할 경우 상태를 바꾸기 위해 콜백, 상태를 단계적으로 전달해야 함. 위젯 트리 깊이가 깊어질수록 이 작업은 번거롭고 비효율적 (Props 지옥)setState는 항상 StatefulWidget과 그 하위 위젯 트리를 재빌드함. 상태를 상위 위젯에서 관리할수록 별 거 아닌 상태 변경에도 UI 재빌드가 발생해 성능 저하로 이어질 수 있음화..
https://docs.flutter.dev/get-started/fundamentals/state-management#using-a-statefulwidget State managementLearn how to manage state in Flutter.docs.flutter.dev(중략)...상태를 관리하는 가장 간단한 방법은 자체 내부에(within itself) 상태를 저장하는 StatefulWidget을 쓰는 것이다. 예를 들어 아래 위젯을 본다.class MyCounter extends StatefulWidget { const MyCounter({super.key}); @override State createState() => _MyCounterState();}class _MyCounte..
아래 포스팅에서 이어지는 포스팅이다. https://onlyfor-me-blog.tistory.com/1237 [Flutter] Retrofit, Dio 사용해서 네트워크 통신하기 - 1 -※ 갤럭시 기기, iOS 에뮬레이터에서 작동 확인 우선 pubspec.yaml에 라이브러리 몇 개를 추가해야 한다. 아래 문서를 보고 필요한 라이브러리를 추가한다. https://mings.in/retrofit.dart/ retrofit - Dart API docsonlyfor-me-blog.tistory.com 코드에서 retrofit과 dio 주로 사용하는데 각 라이브러리가 어떤 라이브러리인지 먼저 확인한다.retrofit의 pub.dev 내용은 아래와 같다. https://pub.dev/packages/retro..
※ 갤럭시 기기, iOS 에뮬레이터에서 작동 확인 우선 pubspec.yaml에 라이브러리 몇 개를 추가해야 한다. 아래 문서를 보고 필요한 라이브러리를 추가한다. https://mings.in/retrofit.dart/ retrofit - Dart API docsRetrofit For Dart retrofit.dart is a type conversion dio client generator using source_gen and inspired by Chopper and Retrofit. Usage Generator Add the generator to your dev dependencies dependencies: retrofit: ^4.9.0 logger: ^2.6.0 # for logging pu..
Slider 예시 코드는 아래와 같다. import 'package:flutter/material.dart';class SliderTest extends StatefulWidget { const SliderTest({super.key}); @override State createState() => _SliderTestState();}class _SliderTestState extends State { double currentVolume = 0; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: const Text("Slider 예시")), body: Center( ..
이 포스팅은 아래 링크를 바탕으로 작성했다. https://docs.flutter.dev/get-started/fundamentals/user-input Handling user inputLearn how to handle user input in Flutter.docs.flutter.dev 플러터는 유저가 앱과 상호작용해서 상태를 바꿀 수 있게 여러 위젯을 제공한다. 스크롤 등 일부 유저 입력 메커니즘은 아래 링크를 참고한다. https://docs.flutter.dev/get-started/fundamentals/layout LayoutsLearn how to create layouts in Flutter.docs.flutter.dev 플러터는 안드로이드의 Material, iOS의 Cupertino..
플러터 앱 구현 중 핸드폰을 흔들었음을 감지해야 하는 경우 shake 라이브러리로 구현할 수 있다.아래는 pub.dev 링크와 예시다. https://pub.dev/packages/shake shake | Flutter packageA flutter package to detect phone shakes. Adjustable G-force and reset periods.pub.devflutter pub add shake 추가만 하면 별도의 설정 없이 바로 흔들기를 감지할 수 있다.아래는 pub.dev에 있는 예시다. import 'package:flutter/material.dart';import 'package:shake/shake.dart';void main() { runApp(const MyAp..
플러터를 최신 버전으로 업그레이드하려고 설치했던 플러터를 제거한 다음 새로 설치한 후 안드로이드 스튜디오에서 플러터 프로젝트를 만들었는데 .idea 폴더만 딸랑 생성됐다.또한 cmd에서 flutter doctor를 실행하니 에러가 발생하면서 cmd가 빠르게 꺼졌다.에러가 발생한 것 같은데 에러 내용도 확인하지 못하고 cmd가 꺼져서 전체 에러는 확인하지 못했지만 아래와 같이 표시됐다. vs code에선 아래 메시지가 표시됐다. 아마 같은 에러일 거라 생각하고 어떻게 해결할까 하는데 중간에 깃 명령어가 보였다. git config --global --add safe.directory C:/flutter 에러 문구도 의심되는 소유권이 감지됐다는 내용이고 소유주가 서로 다르게 표시되어 깃 명령어를 실행하면..
플러터 인강을 듣는데 ListView.builder()를 아래처럼 구현하는 게 보였다. @overrideWidget build(BuildContext context) { return ListView.builder( shrinkWrap: true, physics: NeverScrollableScrollPhysics(), ... ), );} 플러터는 처음이라 그냥 저런 방식으로도 구현하는 거겠거니 하고 넘겼다. 완강 후 같은 강의를 듣는 동생한테 이 옵션 쓰는 거 안 좋은 거 같다는 말을 들어서 찾아본 내용을 정리한다.먼저 플러터 문서는 shrinkWrap 프로퍼티를 아래와 같이 설명한다. https://api.flutter.dev/flutter/widgets/Scroll..
https://dart.dev/language/typedefs TypedefsLearn about type aliases in Dart.dart.dev타입 별칭(type alias)은 typedef 키워드로 선언되고 타입을 간결하게 참조하는 방법이다. IntList라는 타입 별칭을 선언하고 쓰는 예는 아래와 같다 typedef IntList = List;IntList il = [1, 2, 3]; 타입 별칭은 타입 파라미터를 가질 수 있다 typedef ListMapper = Map>;Map> m1 = {}; // 장황함ListMapper m2 = {}; // 같은 내용을 더 짧고 명확하게 2.13 이전엔 typedef가 함수 타입으로만 제한됐다. 새 타입 정의를 사용하려면 최소 2.13 이상의 버전을 써..