dart5 [Flutter] Future Builder 와 ValueListenableBuilder 메모 앱 기능 개발 중 한 가지 문제가 생겼다.메모 데이터 수정이 발생한 경우 수정된 메모만 다시 랜더링 한다는 의도와는 다르게 모든 메모들이 다시 랜더링 되는 현상이 발생했다.이를 해결하기 위해 여러 방법을 시도한 결과, 데이터를 저장하는 형식을 바꾸는 방법으로 해결했다. 1. 기존 방법 - Future Builder 사용DB에서 메모 데이터를 받아오는 방식이기 때문에, 데이터를 모두 받은 이후에 랜더링 할 수 있도록 Future Bulider 를 사용했는데해당 클래스의 future 파라미터에 넣는 함수는 데이터를 반환해야 한다.Future>> _requestDateTodoList() async { final data = await DatabaseHelper.instance.readDateTodo.. 2024. 9. 11. [Flutter] 메모 앱 만들기 - 데이터 베이스 연결 이전 글 - 메모 입력 화면 만들기메모 작성 위젯에서 메모를 입력하고, 저장 버튼을 누르면 이전 화면으로 메모 내용을 전달하는 것 까지 구현했다.작성한 메모 내용을 유지하기 위해서는 로컬 또는 서버에 메모 내용을 저장해야 한다.현재 만들고 있는 앱의 경우에는 이용자를 식별할 수 있는 값 (ex. 가입 ID )이 없으므로 로컬에 데이터를 저장하도록 구상했다. 1. 패키지 설치텍스트 형식의 데이터만 저장할 예정이므로, 규모가 큰 데이터베이스가 요구되지 않기 때문에 SQLite 를 사용해서 메모 데이터를 저장해보려고 한다.먼저, 작성 중인 플러터 앱 > pubspec.yaml 파일에 아래 패키지를 추가한다.dependencies: flutter: sdk: flutter sqflite: ^2.2.0 .. 2024. 9. 7. [Dart] 함수 활용 방법 프로그래밍을 하다 보면 필수적으로 사용자 요구에 맞는 함수를 구성해야 할 필요가 있다.물론 Dart 또한 함수를 만들고 활용이 가능하다. 이번 글에서는 함수를 만드는 방법에 관련해서 알아보기로 한다. 1. 기본 활용 방법함수 이름 앞에 return 될 데이터 타입을 명시한 후 함수 이름을 입력한다. (return 값이 없는 경우: void)그 후, 소괄호 안에 입력 받을 파라미터를 입력한다.이 때, 입력 받을 매개 변수의 데이터 타입을 명시해도 되고, 명시하지 않아도 된다.하지만, 명시하는 쪽이 프로그래밍 중 오류를 찾아내기 더 쉬워 보인다.그 다음, 중괄호 내 표현식을 만들어 준다.String test(String name) => "Hello, $name";void main() { var resu.. 2024. 8. 28. [Dart] 자료형과 자료구조 알아보기 Dart 언어 또한 다른 프로그래밍 언어와 마찬가지로 다양한 종류의 자료형(Type)과 자료 구조를 가지고 있다.이번 글에서는 Dart 가 지원하는 자료형과 자료 구조에 대해서 정리해 보도록 하자. 1. 자료형 정리void main() { String myName = 'chunws'; int year = 10; double power = 11.11; num items = 1234; items = 1234.1; bool canFly = false;}가장 흔하게 사용되는 자료형은 문자열, 숫자, 부울일 것이며문자열은 String, 부울은 bool로 선언하여 사용할 수 있다.숫자형의 경우, 소수점을 사용지 않는 경우 int 자료형을 사용하고, 소수점이 존재하는.. 2024. 8. 27. [Dart] 변수 타입 알아보기 기존에 웹으로 만들던 기능을 앱으로 바꿔서 출시를 하고 싶다는 생각을 했다.하나의 코드로 안드로이드, 아이폰 모두 적용 가능하게 만들고 싶었고, Flutter 와 React Native 중 어떤 것을 사용할까 고민한 결과다양한 언어를 경험해 보자는 차원에서 Flutter 로 결정하게 되었다.Flutter 는 Dart 기반으로 만들 수 있어서, Dart 를 먼저 조금이라도 공부한 후에 Flutter 작업을 하기로 했고이번 글에서는 Dart 언어의 변수 선언 방법에 대해서 알아보고자 한다. 1. 공통 적용 사항Dart 언어는 항상 main 이라는 이름을 가진 함수를 가장 최상위 레벨에서 동작시켜야 한다.또한, 코드가 끝나는 부분에는 항상 세미 콜론(;) 이 있어야 한다.void main() { print(.. 2024. 8. 26. 이전 1 다음