flutter
-
[플러터] Equatable 패키지 사용하기액티브 스킬/플러터 2024. 2. 11. 23:40
플러터(Flutter)에서 개발을 진행하다 보면, 상태 관리와 관련하여 객체의 동등성(equality)을 확인해야 하는 상황이 자주 발생합니다. 이러한 문제를 해결하기 위해 Equatable 패키지를 사용하는 것이 일반적인 방법 중 하나입니다. 이 글에서는 Equatable 패키지가 무엇이고, 왜 플러터 개발에서 이를 사용하는지에 대해 설명하려고 합니다. Equatable 패키지란? Equatable은 Dart의 객체들이 서로 동등한지를 쉽게 확인할 수 있도록 도와주는 패키지입니다. Dart에서는 기본적으로 객체의 동등성을 == 연산자를 통해 확인할 수 있으나, 이는 기본적으로 객체의 식별자(identity)를 기반으로 합니다. 즉, 두 객체가 물리적으로 같은 인스턴스일 때만 true를 반환합니다. 이는..
-
<플러터> DateTime 다루기액티브 스킬/플러터 2023. 9. 16. 11:23
🧭 DateTime 메서드 .toLocal() DateTime 타입의 데이터를 현지 시간으로 표현 .toUtc() DateTime 타입의 데이터를 utc 기준으로 표현 .difference(DateTime other) 파라미터로 넘어온 날짜로부터 차이나는 일수를 반환 DateUtils .dateOnly(DateTime date) 년월일까지만 반환 (시, 분, 초는 00으로 반영) .isSameDay(DateTime? dateA, DateTime? dateB) dateA와 dateB가 같은 날짜 인지 확인 (시, 분, 초 무시)
-
<다트> Stopwatch - 함수 호출 완료 시간 검토무기/다트 2023. 4. 8. 21:58
🧭 함수 호출 시간 개발을 하다보면 함수 호출이 완료되기 까지 시간이 얼마나 걸리는지 확인해야 할 필요가 있거나 확인하고 싶을 때가 있습니다. Stopwatch 이럴 때 사용하는 클래스가 Stopwatch입니다. 바로 사용해 보겠습니다. void yourFunction() { final stopwatch = Stopwatch()..start(); // something to do... stopwatch.stop(); print('Microseconds:${stopwatch.elapsedMicroseconds}'); } 함수 시작시 stopwatch를 start하고, 종료 직전 stop하면 함수 안에서 시간이 얼마나 소요되는지 확인할 수 있습니다. 📌 https://api.flutter.dev/flutte..
-
<다트> removeWhere - 리스트에서 조건을 만족하는 아이템 지우기무기/다트 2023. 4. 8. 21:48
🧭 removeWhere 다트 언어는 리스트에서 조건을 만족하는 아이템을 쉽게 삭제할 수 있는removeWhere 메서드를 지원합니다. 사용예시 for문 사용 시 for (int i = 0; i user.name == 'BadGuy)); 📌 https://api.flutter.dev/flutter/dart-core/List/removeWhere.html removeWhere method - List class - dart:core library - Dart API void..
-
<플러터: Xcode> Xcode 14.3 빌드 에러액티브 스킬/플러터 2023. 4. 4. 21:49
🐛 Xcode 14.3 에러 #1 Could not build the precompiled application for the device. Error (Xcode): File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphoneos.a Error (Xcode): Linker command failed with exit code 1 (use -v to see invocation) 해결 #1 ios/Podfile에 아래와 같은 코드를 추가했습니다. (추가할 위치 파악을 위해, 기존 코드도 포함) post_install do |installer| i..
-
<플러터> showDialog context 에러: Get.context, nullable액티브 스킬/플러터 2023. 1. 9. 21:02
상황 showDialog 호출할 때 Get.context로 context 불러오는 중 null 체크 에러 발생 해결 MaterialApp을 GetMaterialApp으로 교체 참고 https://github.com/jonataslaw/getx/issues/695 Get.context is null during unit tests · Issue #695 · jonataslaw/getx I am using mobx for state management and before adding get package to my project, I was passing the context to each action I needed to. Now by the help of Get.context, I remove all t..
-
<플러터> StatefulBuilder액티브 스킬/플러터 2022. 12. 13. 22:26
🧭 다이얼로그 안에서 setState 사용하기 StatefulWidget 내에서 다이얼로그를 띄우고, 다이얼로그의 상태를 변경하기 위해 setState를 사용하였으나 상태가 변경되지 않았습니다. 다이얼로그에서 setState를 썼을때 다이얼로그를 제외한 StatefulWidget의 상태가 업데이트가 되는걸까 라는 추측을 하게 되었습니다. 맞았습니다. 다이얼로그에서 StatefulBuilder를 통해 위젯을 만들어야 다이얼로그 내의 상태를 변경할 수 있었습니다. 공홈에서는 전체 위젯을 rebuild하지 않고 특정 부분만 rebuild하기 위한 용도로 설명하고 있습니다. 📌 https://changjoopark.medium.com/flutter-dialog-%EC%95%88%EC%97%90%EC%84%9C-..