본문 바로가기

프로그래밍/Flutter-Dart76

[Flutter] Row, Column 오랜만에 다시 flutter를 하게 됐다... 생각이 하나도 안나서 기초부터 다시 학습하려 한다 ㅜ https://flutter-ko.dev/docs/codelabs/layout-basics Basic Flutter layout concepts A codelab that teaches basic Flutter layout concepts through DartPad examples and exercises. flutter-ko.dev Row 예제를 실행해보자 import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { // This widget is the root o.. 2022. 2. 16.
[Flutter] Login App (3) 1. get package 사용 2. 이메일 유효성 검사 3. 비밀번호 obscure suffix icon event 4. login button event 1. 기본 틀 구현 // @dart=2.9 import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; class Login extends StatelessWidget { final TextEditingController _email = new TextEditingController(); final TextEditingController _pass = new TextEditingController(); Strin.. 2021. 3. 29.
[Flutter] native code 호출하기 flutter.dev/docs/development/platform-integration/platform-channels?tab=android-channel-java-tab Writing custom platform-specific code Learn how to write custom platform-specific code in your app. flutter.dev native code를 어떻게 호출하는지와, java와 kotiln을 혼용해도 잘 동작하는지 테스트! android/app/src/main/kotlin/your_package_name/MainActivity.kt package net.koolsign.flutter_app0324 import android.content.Context im.. 2021. 3. 26.
[Flutter] Card 결과 전체 코드 // @dart=2.9 import 'package:flutter/material.dart'; import 'package:get/get.dart'; void main() => runApp(GetMaterialApp( home: MyStatelessWidget(), )); /// This is the stateless widget that the main application instantiates. class MyStatelessWidget extends StatelessWidget { @override Widget build(BuildContext context) { return Center( child: Card( child: Column( mainAxisSize: MainAxisS.. 2021. 3. 25.
[Flutter] Unsound null safety 관련 dart.dev/null-safety/unsound-null-safety#testing-or-running-mixed-version-programs Unsound null safety Mixing language versions lets you migrate to null safety at your own pace, with some of the benefits of null safety. dart.dev 2021. 3. 25.
[Flutter] Dice App project_name/images 사진 넣기 pubspec.yaml flutter: uses-material-design: true assets: - images/ MaterialApp ▶ GetMaterialApp void main() { return runApp( GetMaterialApp( home: Scaffold( backgroundColor: Colors.lime, body: _DicePage(), ), ), ); } Controller class class Controller extends GetxController { var _leftDiceNumber = 1.obs; var _rightDiceNumber = 1.obs; changeDiceFaceLeft() { _leftDiceNumbe.. 2021. 3. 25.
[Flutter] Shared preferences 나는 get과 좀 더 친해지고 싶어서 참고한 블로그 코드에서 get 패턴으로 수정했다.!!!! pubspec.yaml dependencies: flutter: sdk: flutter shared_preferences: get: MaterialApp ▶ GetMaterialApp void main() => runApp(GetMaterialApp( home: MyHomePage(title: 'Shared preferences demo'), theme: ThemeData( primarySwatch: Colors.blue, ), )); Controller class class Controller extends GetxController { var _counter = 0.obs; bool _isFirst = tr.. 2021. 3. 25.
[Flutter] cached_network_image cached_network_image - 캐시된 이미지 사용하는 방법. offline 상태에서도 이미지를 볼 수 있다고 한다. - 한 번 실행해서 이미지를 다운 받은 후에 인터넷 연결 해제한 후 다시 실행해도 됨 pubspec.yaml dependencies: flutter: sdk: flutter cached_network_image: ^2.5.1 main.dart import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widge.. 2021. 3. 25.
[Flutter] get package (2) 경로 관리 GetMaterialApp( home: MyHome(), ) ▶ MaterialApp 앞에 "Get"을 추가하여 GetMaterialApp으로 변경 Get.to(NextScreen()); ▶ 새 화면으로 이동 Get.toNamed('/details'); ▶ 이름이 있는 새 화면으로 이동 Get.back(); ▶ snackbars, dialogs, bottomsheets를 닫으려면 Navigator.pop(context)를 썼음 Get.off(NextScreen()); ▶ 다음 화면으로 이동. 단, 이전 화면으로 돌아가는 옵션이 없는 경우 (예 : Splash 화면, 로그인 화면 등) Get.offAll(NextScreen()); ▶ 다음 화면으로 이동. 단, 이전 경로를 모두 취소하는 경우 (.. 2021. 3. 25.
[Flutter] get package (1) pub.dev에서 어떤 package들을 많이 사용할까 를 찾아보다가 get 이라는 package를 보았다. pubspec.yaml dependencies: get: Counter App 만들기 MaterialApp ▶ GetMaterialApp 변경 void main() => runApp(GetMaterialApp(home: Home())); - GetMaterialApp은 MaterialApp이 자식으로 있는 미리 구성된 위젯이라고 한다. Controller class class Controller extends GetxController { RxInt count = 0.obs; increment() => count++; } - .obs를 사용하여 해당 변수를 관찰 가능한 변수로 만든다. (앞의 값을.. 2021. 3. 24.