반응형
DefaultTabController
는 Flutter에서 TabBar
및 TabBarView
위젯을 쉽게 구현할 수 있게 해주는 위젯입니다. DefaultTabController
는 탭의 수와 탭 전환을 관리하는 로직을 포함하여, 탭을 더 쉽게 만들고 관리할 수 있도록 도와줍니다.
DefaultTabController
의 주요 속성은 다음과 같습니다:
length
: 탭의 수를 정의합니다.child
:TabBar
및TabBarView
를 포함하는 자식 위젯을 정의합니다.
기본적으로 DefaultTabController
는 상태를 자동으로 관리하며, 탭을 전환할 때 애니메이션을 포함한 모든 작업을 처리합니다.
아래는 DefaultTabController
를 사용하는 예제 코드입니다:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: MyHomePage(),
);
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return DefaultTabController(
length: 3, // 탭의 수
child: Scaffold(
appBar: AppBar(
title: Text('DefaultTabController Example'),
bottom: TabBar(
tabs: [
Tab(icon: Icon(Icons.directions_car), text: "Car"),
Tab(icon: Icon(Icons.directions_transit), text: "Transit"),
Tab(icon: Icon(Icons.directions_bike), text: "Bike"),
],
),
),
body: TabBarView(
children: [
Center(child: Text("Car Tab")),
Center(child: Text("Transit Tab")),
Center(child: Text("Bike Tab")),
],
),
),
);
}
}
위 코드에서 DefaultTabController
는 3개의 탭을 관리합니다. TabBar
위젯은 탭 버튼들을 표시하고, TabBarView
위젯은 각 탭에 대한 콘텐츠를 표시합니다. 사용자는 탭을 클릭하여 다른 화면으로 전환할 수 있습니다.
이렇게 DefaultTabController
를 사용하면, 탭 간의 전환과 관련된 모든 상태 관리를 자동으로 처리할 수 있습니다.
반응형
'[====== Development ======] > Flutter' 카테고리의 다른 글
[Flutter] 자식 Widget에서 부모 Widget 으로 이벤트 전달 (0) | 2024.07.07 |
---|---|
[Flutter] GlobalKey 에 대해서 (2) | 2024.06.21 |
[Flutter] FirebaseAuth 상태에 따라 자동으로 Screen 이동하기 (0) | 2024.06.19 |
showModalBottomSheet 안의 TextField 가 키보드에 가려지지 않게 하는 방법 (0) | 2024.06.12 |
[Flutter] Json Serialization (0) | 2024.03.03 |