底部タブバー配置
昨日私たちはTabBar in Flutterを作成しました.しかし、TwitterやInstagramの例で見たように、ボトムを置いたタブバーを使います.
いくつかの理由で、これはわずかに異なるバーバーにそれらを置くよりもフラッタで動作します.
今日はどのようにあなたのフラッターアプリの下部にTabbar(BottomNavigationBar)を配置する方法を示しているよ!
我々の出発点として再び我々のbasic Flutter appを使い始めることにしましょう.
我々のAppbar構成でTabBarを加える代わりに、我々のボディータグの下に新しいCittomNavigationBarを加えます.
これは次のようになります.
それは何もしない、タブをクリックすることができますが、何も起こりません.
まず最初に、我々は現在選択されたタブのためにいくつかの州を活用する必要があるので、これをstateful widgetに変えましょう.
一つには、現在選択されているタブを持っている必要があります.したがって、私たちの
さあ、私たちの体の部分を最初に修正しましょう.
どのようなSelectedIndexに基づいています.
今、我々は
あなたが今日のために全部のファイルを見たいならば、GitHubでプロジェクトをチェックしてください.
私のブログを読んでくれてありがとう.私の電子メール会報を購読して、Facebook
いくつかの理由で、これはわずかに異なるバーバーにそれらを置くよりもフラッタで動作します.
今日はどのようにあなたのフラッターアプリの下部にTabbar(BottomNavigationBar)を配置する方法を示しているよ!
フラッタアプリケーションでのBottomNavigationBarの追加
我々の出発点として再び我々のbasic Flutter appを使い始めることにしましょう.
我々のAppbar構成でTabBarを加える代わりに、我々のボディータグの下に新しいCittomNavigationBarを加えます.
これは次のようになります.
void main() async {
runApp(
MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Tabs Demo'),
),
body: Center(
child: Text('Welcome to Flutter'),
),
bottomNavigationBar: BottomNavigationBar(
items: [
BottomNavigationBarItem(
icon: Icon(Icons.directions_car), label: 'Car'),
BottomNavigationBarItem(
icon: Icon(Icons.directions_transit), label: 'Train'),
BottomNavigationBarItem(
icon: Icon(Icons.directions_bike), label: 'Bike'),
],
),
),
),
);
}
次のような結果を与えます.それは何もしない、タブをクリックすることができますが、何も起こりません.
まず最初に、我々は現在選択されたタブのためにいくつかの州を活用する必要があるので、これをstateful widgetに変えましょう.
void main() async {
runApp(
MaterialApp(home: BottomTabBarWidget()),
);
}
class BottomTabBarWidget extends StatefulWidget {
@override
State<BottomTabBarWidget> createState() => _BottomTabBarWidget();
}
class _BottomTabBarWidget extends State<BottomTabBarWidget> {
@override
Widget build(BuildContext context) {
// Return our scaffold we used before
}
}
それで、我々が支配しているこの状態は、何ですか?一つには、現在選択されているタブを持っている必要があります.したがって、私たちの
_BottomTabBarWidget
のための整数を定義しましょう.class _BottomTabBarWidget extends State<BottomTabBarWidget> {
int _selectedIndex = 0;
// Rest of the code
}
次に、コンテンツページがどのように見えるかを定義します.今のところ、基本的なテキストフィールドを使いましょう.static const List _tabPages = [
Text('I travel by Car'),
Text('I like trains more'),
Text('I like to ride my bycycle'),
];
タブをクリックしたときにコールできる関数を作成しましょう.void _onItemTapped(int index) {
setState(() {
_selectedIndex = index;
});
}
これにより、タブがクリックされた場合は_selectedIndex
変数が変わります.さあ、私たちの体の部分を最初に修正しましょう.
body: Center(
child: _tabPages[_selectedIndex],
),
コードのこの部分は1つのタブページ(テキストフィールド)だけを表示します.どのようなSelectedIndexに基づいています.
Remember Flutter stateful widgets re-render everything something changes.
今、我々は
_tabPages
関数を呼び出すために実際の下部のナビゲーションバーを変更することができます.bottomNavigationBar: BottomNavigationBar(
currentIndex: _selectedIndex,
onTap: _onItemTapped,
items: [
// The items
]
)
そして、この場所で、我々はフラッタの下のナビゲーションバーをナビゲートすることができます.あなたが今日のために全部のファイルを見たいならば、GitHubでプロジェクトをチェックしてください.
読んでいただきありがとうございます、接続しましょう!
私のブログを読んでくれてありがとう.私の電子メール会報を購読して、Facebook
Reference
この問題について(底部タブバー配置), 我々は、より多くの情報をここで見つけました https://dev.to/dailydevtips1/flutter-bottom-tabbar-placement-3ii3テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol