본문 바로가기

Flutter

(32)
플러터 기본기 다지기 - 3 (TabBar 위젯) TabBar와 TabBarView 개념TabBar: 여러 개의 탭을 화면에 표시하며, 각 탭을 클릭할 수 있도록 해주는 위젯이다. 사용자가 탭을 클릭하면 해당 탭에 대한 내용을 표시한다.TabBarView: TabBar와 연결되어 각 탭에 해당하는 내용을 표시하는 역할을 한다. 사용자가 탭을 선택하면 이 위젯이 해당하는 내용을 보여준다.TabControllerTabController: 탭의 상태를 관리하는 클래스입니다. 탭의 개수와 현재 활성화된 탭을 추적한다. SingleTickerProviderStateMixin을 사용하여 애니메이션과 상태 관리를 돕는다.length: 탭의 개수를 지정한다.vsync: 애니메이션의 성능을 최적화하는 데 사용된다. 이 예제에서는 this를 사용하여 현재 상태를 참조한다..
플러터 기본기 다지기 - 3 (BottomSheet 위젯) BottomSheet 위젯화면 아래쪽에서 올라오는 다이얼로그showBottomSheet() 및 showModalBottomSheet()의 builder 속성에 지정한 위젯을 화면 아래쪽에서 올라오도록 보여줌showModalBottomSheet()는 사용자가 Bottom Sheet 외부를 터치하면 Bottom Sheet가 자동으로 닫히지만, showBottomSheet()는 사용자가 Bottom Sheet 외부를 터치해도 Bottom Sheet가 닫히지 않음다이얼로그를 닫기 위해서는 닫히게 하려면, Navigator.of(context).pop()을 호출하면 됨 import 'package:flutter/material.dart'; void main() { runApp(BottomSheetApp());..
플러터 기본기 다지기 - 3 (쇼핑 카트 앱 만들어 보기 ) git code flutter-book/flutter_shoppingcart at master · flutter-coder/flutter-bookContribute to flutter-coder/flutter-book development by creating an account on GitHub.github.com  작업 순서 constants.dart 파일 작업 theme.dart 파일 작업 .. header.dart … details.dart  constants.dart 파일 작업import 'package:flutter/material.dart';const kPrimaryColor = MaterialColor( 0xFFeeeeee, { 50: Color(0xFFeeeeee), 100..
플러터 기본기 다지기 - 3 (PageView 위젯) PageView 위젯스와이프 이벤트에 반응하여 항목을 보여주는 위젯PageController의 initialPage로 처음 보일 페이지를 설정할 수 있고, viewportFraction으로 현재 페이지가 화면에 차지하는 비율도 설정 가능예: viewportFraction: 0.7이면 현재 페이지가 화면에 70%, 나머지 30%가 이전과 다음 페이지가 살짝 보이게 됨PageController 객체를 PageView의 controller 속성에 적용하여, PageController 설정을 반영시킬 수 있음import 'package:flutter/material.dart';void main() { runApp(const MyApp1());}class MyApp1 extends StatelessWidget ..
플러터 기본기 다지기 - 3 (GridView 위젯) GridView 위젯리스트 뷰와 마찬가지로 항목을 나열하는 위젯이지만, 리스트 뷰와 달리 한 줄에 여러 개를 함께 나열할 수 있음 (그리드 형태)리스트 뷰와 마찬가지로 그리드뷰도 GridView.builder() 생성자를 제공하며,itemCount, itemBuilder 속성을 통해 항목의 개수와 위젯을 지정gridDelegate 속성을 설정해야 함이 속성에는 SliverGridDelegateWithFixedCrossAxisCount 객체를 지정해줘야 함해당 객체에서 crossAxisCount 값이 한 줄에 함께 나와야 하는 항목의 개수임그리드 두 방향을 설정하지 않으면, crossAxisCount는 가로를 가리킴참고: scrollDirection 속성에 Axis.horizontal을 설정하면, cros..
플러터 기본기 다지기 - 3 ( ListView 사용법과 주요 property) ListView 사용법과 주요 property가장 일반적으로 사용되는 스크롤 위젯ListView는 주로 다음과 같은 방식으로 사용일반적인 ListView를 명시적으로 호출하고 children 전달하는 방법 (적은 데이터에 사용시 용이함)ListView.builder를 사용하여 동적으로 호출ListView.separated는 ListView.builder 기능에 구분선 사용 가능주요 propertyreverse: true이면 bottom에서부터 리스트 표시padding: 리스트 아이템 간격 (EdgeInsets로 적용)itemCount: 동적 리스트 아이템 개수 (ListView.builder/ListView.separated에서 사용 가능)itemBuilder: 각 동적 리스트 아이템 정의 (ListVi..
플러터 기본기 다지기 - 3 (Form 위젯) Form 위젯TextField는 단순히 하나의 텍스트 입력을 다루는데 반해서, Form은 그 자체로 입력 필드를 가지고 있지 않지만, FormField 위젯들을 그룹화하여 관리하며, 복잡한 유효성 검사와 보다 쉽게 할 수 있는 위젯다른 위젯과 달리 Form 위젯은 자체적인 화면을 제공하지는 않으며, 사용자가 입력한 데이터의 유효성 검증, 데이터 관리 관련 기능을 제공함Form 위젯 내에서 TextFormField 위젯을 사용하여 각 데이터 입력을 받는 것이 일반적임Form 위젯 작성 방법은 다음과 같음 1. Form 위젯을 위한 GlobalKey를 만들어야 함. GlobalKey는 FormState 전체에 액세스하는 데 사용되며, 이 객체는 폼 데이터의 유효성을 검사하고 저장하는 데 사용됨final _f..
플러터 기본기 다지기 - 2 Flutter 앱 개발에서 자주 사용되는 asset과 로컬 폰트 설정 방법asset이란?asset은 앱 구성에 필요한 리소스 파일들을 의미합니다. 예로 아이콘, 이미지, JSON 파일, 폰트 파일 등이 있다.이러한 리소스는 앱 빌드 시 내부에 포함되어야 하며, 이를 위해 pubspec.yaml 파일에 등록이 필요하다. Text 위젯에서 로컬 폰트(fontFamily) 설정하기Flutter에서 Text 위젯의 fontFamily를 로컬 폰트로 설정하려면, asset으로 폰트를 등록한 후 사용해야 한다.  폰트 다운로드 Browse Fonts - Google FontsMaking the web more beautiful, fast, and open through great typographyfonts.goo..

728x90