2023-12-26 1. 라이브러리 사용 라이브러리는 flutter_easyloading이다. 해당 라이브러리는 명령어 하나로 손쉽게 로딩 기능을 구현할 수 있도록 도와준다. 2. 방법 pubspec.yaml 에 아래와 같이 의존성을 주입해 준다. dependencies: flutter_easyloading: ^3.0.5 아래의 예제를 참고하여 자신의 MarteialApp에 builder: EasyLoading.init(), 부분을 추가해 준다. (해당 부분은 없으면 초기화 안됬다고 에러가 발생한다.) class MyApp extends StatelessWidget { // This widget is the root of your application. @override Widget build(Build..
2023-12-21 1. 방법 아래와 같이 leadingWidth를 넓히면 전체적인 leading에 위치해 있는 로고의 크기를 키울 수 있다. AppBar( title: const Text('Title'), leading: Placeholder(color: Colors.white), leadingWidth: 100, ) 2.출처 https://stackoverflow.com/questions/66387869/how-to-increase-size-of-appbar-leading-property-in-flutter How to Increase size of AppBar leading property in flutter? I'm trying to add my custom text button into AppB..
2023-12-20 1. State 각각의 위젯들은 계층적 구조를 가지며 상태를 가지고 있다. 이러한 위젯의 상태를 초기화하기 위해서 build()라는 메서드를 사용하게 되며 해당 메서드는 데이터의 필요 시점에 자식 위젯의 인스턴스화하는 것을 보장해 준다. @override Widget build(BuildContext context) { return ContentWidget(importantState); } 다만 아래와 같이 계층 구조가 깊어질 수록 상위 위젯에 정보에 접근하는 것이 어려워지는데 이를 위해 Flutter에서는 InheritedWidget 클래스를 제공한다. 해당 클래스를 활용하면, 현재 위젯의 상위위젯에 접근할 수 있다. 아래는 ExamWidget 또는 GradeWidget 개체 중 하..
2023-12-19 1. Concept 플러터는 확장 가능한 레이어 시스템으로 구성되어 있다. 이는 플러터의 레이어가 각각의 독립적인 라이브러리 형태로 존재하고 이는 자신이 속해 있는 레이어에 의존하고 있다고 볼 수 있다. 또한 해당 레이어들은 하위에 레이어 직접적인 접근권한을 가지고 있지 않으며, 모든 프레임워크 레벨들은 옵션적이거나 교체 가능하게 디자인되어 있다. 플러터는 기본적으로 어떠한 native application(ios, android) 에서든지 문제없이 동작할 수 있도록 패키징되어 시스템위에서 동작하게 된다. 2. Embedder Layer 우리가 처음 flutter 프로젝트를 생성할때 Embedder level 에서 다양한 플랫폼에 대한 Embedder 레이어가 Flutter에서 즉시 ..
2023-12-17 1. 방법 ctrl(command) + shift + p 로 Open User Settings (JSON) 검색 후 실행 이후 아래와 같이 "editor.codeActionsOnSave":{ "source.fixAll": true } 를 하단에 추가 한다. { "editor.fontSize": 14, "terminal.integrated.fontSize": 16, "debug.console.fontSize": 13, "[dart]": { "editor.formatOnSave": true, "editor.formatOnType": true, "editor.rulers": [ 80 ], "editor.selectionHighlight": false, "editor.suggestSelect..
2023-12-16 1. 예제 아래는 전체 코드이다. import 'package:flutter/material.dart'; class TextFieldOverFlowPage extends StatefulWidget { const TextFieldOverFlowPage({super.key}); @override _TextFieldPageState createState() => _TextFieldPageState(); } class _TextFieldPageState extends State { final TextEditingController _textFieldController = TextEditingController(); @override Widget build(BuildContext context..