일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- textview
- android
- 테스트
- intent
- tabbar
- data
- 앱바
- ScrollView
- CustomScrollView
- textfield
- LifeCycle
- activity
- TEST
- 안드로이드
- 계측
- 앱
- scroll
- viewmodel
- Navigation
- Compose
- livedata
- binding
- Coroutines
- Dialog
- Button
- Flutter
- drift
- appbar
- DART
- Kotlin
- Today
- Total
목록Flutter (85)
Study Record
✍ Future 와 Stream drift 에서 select 로 데이터를 가져올 때 get() 함수로 가져오는 것과 watch() 함수로 가져올 수 있다. get() 함수는 Future 로 받고 watch() 함수는 Stream 으로 받는다. Stream 으로 가져오는 것은 데이터의 변화가 있으면 자동으로 업데이트해 준다는 점이다. 반면에 Future 는 딱 한 번 실행할 때 가져오고 데이터의 변화가 있어도 업데이트하지 않는다. import 'package:drift/drift.dart'; import 'dart:io'; import 'package:drift/native.dart'; import 'package:flutter/services.dart'; import 'package:path_provid..
✍ 데이터베이스 importing drift 에서 새로운 데이터 베이스를 만들지 않고 이미 있는 데이터 베이스를 importing 할 수 있다. 첫 번째로, assets 디렉터리에 데이터 베이스 파일을 넣고 pubspec.yaml 에 데이터 베이스 파일을 추가한다. 두 번째로, 데이터 베이스 클래스에 미리 생성된 데이터 베이스가 없으면 assets 에 저장한 데이터 베이스를 저장하는 걸로 importing 을 할 수 있다. import 'package:drift/drift.dart'; import 'package:flutter/services.dart' show rootBundle; import 'package:path/path.dart' as p; LazyDatabase _openConnection()..
🎁 drift 테이블과 데이터 test_database.dart import 'package:drift/drift.dart'; import 'dart:io'; import 'package:drift/native.dart'; import 'package:path_provider/path_provider.dart'; import 'package:path/path.dart' as p; part 'test_database.g.dart'; class Students extends Table { IntColumn get id => integer().autoIncrement()(); TextColumn get name => text()(); IntColumn get grade => integer()(); TextCo..
✍ table 만들기 drift 라이브러리에 table 을 만드는 방법 2가지를 소개하려 한다. sql 언어로 작성된 파일을 만들어 데이터베이스를 클래스에서 파일을 참고하는 방법과 Table 클래스를 상속받은 클래스를 만드는 방법이 있다. ✍ 파일을 사용한 방법 ./lib/database/tables.drift CREATE TABLE todos ( id INT NOT NULL PRIMARY KEY AUTOINCREMENT, title TEXT, body TEXT, category INT REFERENCES categories (id) ); CREATE TABLE categories ( id INT NOT NULL PRIMARY KEY AUTOINCREMENT, description TEXT ) AS Ca..
✍ drift 드리프트(Drift)는 Flutter 와 dart 를 위한 반응형 지속성 라이브러리로, sqlite 위에 구축되었다. SQL 와 Dart 언어를 사용하여 쿼리를 작성할 수 있고 여러 테이블과 join 연산뿐 아니라 WITH,WINDOW 와 같은 복잡한 SQL 언어도 사용할 수 있다. Android 와 IOS 뿐만 아니라 Windows, Linux, Web 에서도 작동한다. 이 글에서 설명하는 drift 는 2.6.0 버전에 해당한다. 이 글에 해당하는 모든 코드는 dift docs 를 참고했다. drift | Dart Package Drift is a reactive library to store relational data in Dart and Flutter applications. pu..
pub get 을 실행하던 Dart Sdk version 이 2.19.0 이상이 필요하다고 해서 프로젝트의 dart version 을 바꿔보려 한다. ✍ dart 버전 다운받기 Flutter SDK releases 를 다운받을 수 있는 사이트에서 원하는 dart version 에 맞는 Flutter SDK 를 다운받는다. Flutter SDK releases All current Flutter SDK releases, stable, beta, and master. docs.flutter.dev 2.19.1 버전을 다운로드하였다. ✍ 안드로이드 스튜디오 프로젝트의 dart 설정하기 다운로드한 Flutter Sdk releases 의 압축을 풀고 ./flutter/bin/cache/dart-sdk/ 파일 경..
✍ 탭바의 기본 클릭 ink 효과 탭바의 탭을 선택하면 기본으로 번지는 효과가 발생한다. 누르면 잉크처럼 번지는 효과(splash)와 관련된 TabBar 인자는 다음과 같다. TabBar({ MaterialStateProperty ? overlayColor, InteractiveInkFeatureFactory? splashFactory, BorderRadius? splashBorderRadius, }) overlayColor 의 기능 중 일부는 splash 와 관련된 색상을 정의한다. splashFactory 는 어떤 splash 를 사용할지를 뜻하고 splashBorderRadius 는 번지는 영역의 가장자리를 둥글게 만들 수 있다. 예시) TabBar({ overlayColor: MaterialSta..
✍ 탭바 디자인 변경하기 TabBar, TabBarView, Tab, DefaultTabController 를 사용하여 구현한 탭바의 디자인과 관련된 인자를 소개하려 한다. ✍ TabBar TabBar({ Key? key, required List tabs, TabController? controller, bool isScrollable = false, EdgeInsetsGeometry? padding, Color? indicatorColor, bool automaticIndicatorColorAdjustment = true, double indicatorWeight = 2.0, EdgeInsetsGeometry indicatorPadding = EdgeInsets.zero, Decoration? ind..