반응형

flutter.dev 12

json 파싱

json 파싱. 예들들어 Map param = { "title": "picture book", "info" : [ {"pageNum":1,"url":"http://abcdef.com/a"}, {"pageNum":2,"url":"http://abcdef.com/b"}, {"pageNum":3,"url":"http://abcdef.com/c"}, {"pageNum":4,"url":"http://abcdef.com/d"}, {"pageNum":5,"url":"http://abcdef.com/e"}, ] }; 이렇게 List를 포함한 형식의 json이 있을 때 입니다. 이 때, info 부분만 Map 타입으로 가져오려할 때 List infoList = param["info"]; 으로 가져오면 infoList 는..

flutter.dev 2021.07.06

Hive

1. 디펜던시 defendency hive hive_flutter dev_defendency build_runner hive_generator 2. 모델 생성 2-1. 코드작성 class WordModel 모델을 Hive에서 사용하려면 어노테이션을 사용해야함 @HiveType(typeId:1) : 타입ID는 1부터 시작함. @HiveField(0) import 'package:hive/hive.dart'; part 'word_model.g.dart'; @HiveType(typeId: 1) class WordModel{ @HiveField(0) final int id; @HiveField(1) final String engWord; @HiveField(2) final String korWord; @Hive..

flutter.dev 2021.05.25

[하는 중.]어셋과 이미지 추가하기

어셋과 이미지 추가하기 플러터앱은 코드와 어셋(리소스)을 가지고 있습니다. 번들로 앱에 들어가 있는 어셋은 실행 할 때 접근할 수 있습니다. 보통 어셋의 형식은 정적 데이터, 구성파일, 아이콘, 이미지 등 입니다. 어셋 명세하기 앱에서 사용할 어셋들은 pubspec.yaml 기술합니다. 디렉토리의 모든 어셋들을 포함시키려면 “디렉토리이름/”으로 써 주면 됩니다. 어셋번들링 flutter의 asset섹션에 명시되어 있는 어셋들은 앱에 포함됩니다. 다른 컨텍스트에서 예를 들어 어셋 로딩 AssetBundle 객체를 사용해 앱의 어셋에 접근할 수 있습니다. loadString()는 string/test 어셋을 가져올 때 사용합니다. load()는 image/binary 어셋을 가져올 때 사용합니다. Logic..

flutter.dev 2019.11.26

Provider

설정pubspec.yaml 파일을 열어 dependencies에 provider를 추가해 줍니다. dependencies: flutter: sdk: flutter # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^0.1.2 provider: ^3.0.0 #new 소스에서 provider.dart를 임포트하면 provider패턴을 사용하 실 수 있습니다.import 'package:provider/provider.dart'; 상태접근사용자가 카탈로그에서 항목 중 하나를 클릭하면 장바구니에 추가됩니다. My..

flutter.dev 2019.11.05

리스트 기본

리스트 기본 데이터를 리스트로 보여주는 것은 모바일 앱에서 기본적인 형태입니다. 플러터에는 ListView 위젯이있어 리스트를 쉽게 만들 수 있습니다. ListView 작성 기본 ListView 생성자를 사용하는 것은 몇개의 아이템만 있을 때 좋습니다. 그리고 아이템의 화면 구성을 위해 ListTile 위젯을 사용하겠습니다. ListView( childern : [ ListTile( leading : Icon(Icons.map), title : Text('Map') ), ListTile( leading : Icon(Icons.photo_album), title : Text('Album') ), ListTile( leading : Icon(Icons.phone), title : Text('Phone') )..

flutter.dev 2019.05.03

스크린에 데이터 전달하기

스크린에 데이터 전달하기종종 우리는 새로운 스크린으로 이동할 때 데이터도 같이 넘겨주고 싶을 때가 있습니다. 예를 들어 사용자가 탭한 아이템의 정보를 같이 넘겨 조고 싶을 것 입니다. 스크린은 위젯이라는것을 명심하세요. 이 예제에서 우리는 투두 리스트를 작성하고, 투두가 탭되었을 때 투두의 정보를 보여주는 새로운 스크린(위젯)으로 이동하겠습니다. 디렉션1. 투두 클래스 정의2. 투두 리스트 화면출력3. 투두의 정보를 표시할 디테일 스크린을 작성4. 디테일 스크린으로 데이터를 넘겨주면서 화면이동 1. 투두 클래스 정의먼저 투두를 표현할 수 잇는 것이 필요합니다. 두개의 정보(타이틀, 설명)를 가지는클래스를 정의하겟습니다.class Todo{ final String title; final String des..

flutter.dev 2019.05.02

데이터 돌려받기

데이터 돌려받기 어떤 경우에, 새로운 스크린으에서 데이터를 받기를 원합니다. 사용자에게 두 가지 선택사항을 보여주는 새로운 화면을 생각해봅니다. 사용자가 둘 중 하나를 선택해서 탭하면, 원래 화면에서는 사용자가 선택한 값을 돌려받고 싶어할 것입니다. 어떻게 하면될까요? Navigatior.pop을 사용하면 됩니다. 디렉션1. home 스크린 작성2. selection 스크린을 실행시킬 버튼 추가하기3. 두 가지 버튼을 가지는 seletion 스크린을 보여주기4. 버튼을 탭하면 selection 스크린 닫기5. home 스크린의 스낵바에서 선택항목을 보여주기 1. home 스크린 작성selection 스크린을 실행시킬 버튼 추가하기1. 탭하였을 때 SelectionScreen을 실행시킨다.2. Select..

flutter.dev 2019.04.30

네임드 라우트에 인자 전달하기

Navigatoer는 식별자를 사용해서 네임드 라우트로 화면이동할 수 있도록 해줍니다. 그런데 네임드 라우트에 인자들을 넘겨주고 싶은 경우도 있습니다.예를 들어 /user 라우트로 화면을 이동때 user의 정보를 같이 넘겨 주는 경우 입니다. Navigator.pushNamed 메소드에 인자들을 추가해서 넘겨주면 사용하면 이런 작업을 할 수 있습니다 @optionalTypeArgs Future pushNamed ( BuildContext context, String routeName, { Object arguments}) ModalRoute.of 메소드 혹은 MaterialApp 이나 CupertinoApp 생성자의 onGenerateRoute 함수를 사용해 인자들을 꺼내 올 수 있습니다. 이 예제에서는..

flutter.dev 2019.04.26