日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

5、Flutter 实现 ViewPager、bottomNavigationBar 界面切换

發布時間:2023/12/10 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 5、Flutter 实现 ViewPager、bottomNavigationBar 界面切换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、前言

首先我們想一下,如果在 Android 中實現 布局切換,通常的思路是:

  • 做一個 viewpager
  • 一組 Fragment
  • 每個 Fragment 綁定一個 xml
  • 最后填充至 viewpager
  • 2、Flutter 實現

    上邊提到的用安卓原生做,思路是很明確,但是代碼量還是有的,那么來看一下, Flutter 如何使用 Viewpager 實現的。

    2.1、創建有狀態 Widget

    首先創建有狀態 StatefulWidget,然后構建 state:_ApplicationPageState

    class ApplicationPage extends StatefulWidget {//@override//_ApplicationPageState createState() => new _ApplicationPageState();等同于上邊注釋掉的 createState();@overrideState<StatefulWidget> createState() {// TODO: implement createStatereturn _ApplicationPageState();}}

    2.2、state

    Scaffold 實現了基本的紙墨設計布局結構。所以我們 new Scaffold 然后 return 即可。

    class _ApplicationPageState extends State<ApplicationPage> {int _currentPageIndex = 0;var _pageController = new PageController(initialPage: 0);@overrideWidget build(BuildContext context) {return new Scaffold(appBar:new AppBar(title: new Text("我是AppBar"),centerTitle: true,),body: new PageView.builder(onPageChanged:_pageChange,controller: _pageController,itemBuilder: (BuildContext context,int index){return index==1?new Text("我是第一頁"):new Text("我是第二頁");},itemCount: 2,),bottomNavigationBar: new BottomNavigationBar(items: [BottomNavigationBarItem(icon: new Icon(Icons.category), title: new Text("首頁")),BottomNavigationBarItem(icon: new Icon(Icons.message), title: new Text("我的")),],currentIndex: _currentPageIndex,onTap: onTap,),);}// bottomnaviagtionbar 和 pageview 的聯動void onTap(int index) {// 過pageview的pagecontroller的animateToPage方法可以跳轉 _pageController.animateToPage(index,duration: const Duration(milliseconds: 300), curve: Curves.ease);}void _pageChange(int index) {setState(() {if (_currentPageIndex != index) {_currentPageIndex = index;}});}}

    關于上邊有幾個方法:

    Scaffold 有下面幾個主要屬性:
    • appBar:顯示在界面頂部的一個 AppBar,也就是 Android 中的 ActionBar 、Toolbar
    • body:當前界面所顯示的主要內容 Widget
    • bottomNavigationBar: 顯示在頁面底部的導航欄

    2.3、navBar和pageview如何聯動?

    通過上邊的代碼也可以發現,pageView有個?onPageChanged 屬性,并且類中定義了一個?_pageChange 方法,

    通過 pageview 的 pagecontroller 的 animateToPage 方法實現的界面跳轉;

    ?

    總結

    以上是生活随笔為你收集整理的5、Flutter 实现 ViewPager、bottomNavigationBar 界面切换的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 欧美一区不卡 | 国产欧美视频一区二区三区 | 亚洲三级在线观看 | 日批黄色 | 国产一级黄色录像 | 欧美精品久久久久性色 | 国产一区二区三区电影在线观看 | 一本色道久久综合 | 婷婷亚洲一区 | 婷婷国产精品 | 成熟了的熟妇毛茸茸 | 影音先锋二区 | 亚洲AV无码乱码国产精品牛牛 | いいなり北条麻妃av101 | 国产一区成人 | 日日夜夜精品视频免费 | 日本精品一区二区三区在线观看 | 天天狠天天插 | av大西瓜 | 三级免费看 | 亚洲成人91 | 亚洲午夜精品 | 中国丰满人妻videoshd | 樱桃视频污污 | xxx.国产 | 亚洲精品久久久久久久蜜桃臀 | 中文字幕无码av波多野吉衣 | 三度诱惑免费版电影在线观看 | 91麻豆精品国产91久久久无需广告 | 亚洲欧洲日韩综合 | 色哟哟中文字幕 | 91视频你懂的 | 中文字幕免费高清 | 97视频成人 | 黄色欧美一级片 | 91精品视频免费看 | 91人妻一区二区三区 | 午夜鲁鲁 | 日婷婷 | 亚洲小说区图片区 | 日韩黄网 | 中文在线а√天堂 | 操干网| 美女的隐私免费看 | 欧美一区高清 | 久久九九免费视频 | 亚洲免费av一区二区 | 欧美日韩激情网 | 超碰超碰 | 精品少妇一区二区三区免费观 | 黄色视屏在线免费观看 | 久久免费久久 | 激情久久一区 | 日韩免费成人av | 69式视频 | 亚洲精品中文字幕在线播放 | 国产免费av一区 | 欧美成人综合网站 | 亚洲av久久久噜噜噜噜 | 男人天堂中文字幕 | 国产免费高清视频 | 久久久ww| 久草中文网| 免费黄色av网址 | 懂色av蜜臀av粉嫩av分 | 午夜性福利视频 | 亚洲成人一区二区 | 国产色悠悠 | 成人自拍视频在线 | 日韩欧美精品在线播放 | 黄色a一片 | 国产永久毛片 | 人人狠狠| 一本到在线 | 性色av蜜臀av | 精品国产一区二区三 | 狠狠摸狠狠操 | 国产资源在线视频 | 在线不卡国产 | 草莓巧克力香氛动漫的观看方法 | 日韩一区二区三区电影 | 麻豆影音 | 欧美日韩高清免费 | 特级毛片www | 欧美性生活网址 | 久久视精品 | 最新久久久| 亚洲人xxx | 天天爽夜夜操 | 日韩伦理一区二区 | 欧美色图在线视频 | 午夜电影你懂的 | 人妻在客厅被c的呻吟 | 日本女人hd| 双性懵懂美人被强制调教 | 国产suv精品一区二区883 | 五月少妇 | 五月婷婷视频在线观看 | 玩弄人妻少妇500系列 |