您好,登錄后才能下訂單哦!
本文實例為大家分享了Android九宮格圖片展示的具體代碼,供大家參考,具體內(nèi)容如下
1 添加依賴庫
flutter_swiper: ^1.0.6
2 普通常用 圓點指示器自動輪播圖
class SwiperViewDefaultPage extends StatefulWidget { @override State<StatefulWidget> createState() { return new SwiperViewDefaultPageState(); } } class SwiperViewDefaultPageState extends BaseAppBarPageState<SwiperViewDefaultPage> { @override String buildInitState() { buildBackBar("輪播圖", backIcon: Icons.arrow_back_ios); return null; } @override Widget buildWidget(BuildContext context) { print("build --"); return new Column( children: <Widget>[ Padding( padding: EdgeInsets.all(10), ), buildStyle1(), ], ); } // 分頁指示器 buildSwiperPagination() { return SwiperPagination( //指示器顯示的位置 alignment: Alignment.bottomCenter, // 位置 Alignment.bottomCenter 底部中間 // 距離調(diào)整 margin: const EdgeInsets.fromLTRB(0, 0, 0, 5), // 指示器構(gòu)建 builder: DotSwiperPaginationBuilder( // 點之間的間隔 space: 2, // 沒選中時的大小 size: 6, // 選中時的大小 activeSize: 12, // 沒選中時的顏色 color: Colors.black54, //選中時的顏色 activeColor: Colors.white), ); } //banner 圖 Widget buildStyle1() { return Container( height: 200.0, child: new Swiper( // 橫向 scrollDirection: Axis.horizontal, // 布局構(gòu)建 itemBuilder: (BuildContext context, int index) { return new Image.network( "http://hbimg.b0.upaiyun.com/a3e592c653ea46adfe1809e35cd7bc58508a6cb94307-aaO54C_fw658", fit: BoxFit.fill, ); }, //條目個數(shù) itemCount: 6, // 自動翻頁 autoplay: true, // 分頁指示 pagination: buildPlugin(), //點擊事件 onTap: (index) { print(" 點擊 " + index.toString()); }, // 相鄰子條目視窗比例 viewportFraction: 1, // 布局方式 //layout: SwiperLayout.STACK, // 用戶進行操作時停止自動翻頁 autoplayDisableOnInteraction: true, // 無線輪播 loop: true, //當前條目的縮放比例 scale: 1, ), ); } buildPlugin() { return SwiperPagination(); } }
3 自定圓點分頁指示器 效果
//自定圓點分頁指示器 buildSwiperPagination() { // 分頁指示器 return SwiperPagination( //指示器顯示的位置 alignment: Alignment.bottomCenter, // 位置 Alignment.bottomCenter 底部中間 // 距離調(diào)整 margin: const EdgeInsets.fromLTRB(0, 0, 0, 5), // 指示器構(gòu)建 builder: DotSwiperPaginationBuilder( // 點之間的間隔 space: 2, // 沒選中時的大小 size: 6, // 選中時的大小 activeSize: 12, // 沒選中時的顏色 color: Colors.black54, //選中時的顏色 activeColor: Colors.white), ); } //定義輪播圖組件 Widget buildStyle1() { return Container( height: 200.0, child: new Swiper( // 橫向 scrollDirection: Axis.horizontal, // 布局構(gòu)建 itemBuilder: (BuildContext context, int index) { return new Image.network( "http://hbimg.b0.upaiyun.com/a3e592c653ea46adfe1809e35cd7bc58508a6cb94307-aaO54C_fw658", fit: BoxFit.fill, ); }, //條目個數(shù) itemCount: 6, // 自動翻頁 autoplay: true, // 分頁指示 pagination: buildSwiperPagination(), //點擊事件 onTap: (index) { print(" 點擊 " + index.toString()); }, // 視窗比例 viewportFraction: 1, // 布局方式 //layout: SwiperLayout.STACK, // 用戶進行操作時停止自動翻頁 autoplayDisableOnInteraction: true, // 無線輪播 loop: true, scale: 1, ), ); }
4 自定數(shù)字 分頁指示器 效果
//自定義分頁指示器 buildSwiperPagination() { // 分頁指示器 return SwiperPagination( //指示器顯示的位置 alignment: Alignment.bottomCenter, // 位置 Alignment.bottomCenter 底部中間 // 距離調(diào)整 margin: const EdgeInsets.fromLTRB(0, 0, 0, 5), // 指示器構(gòu)建 builder: FractionPaginationBuilder( // 選中時字體大小 activeFontSize: 14, // 字體大小 fontSize: 14, // 字體顏色 color: Colors.red, //選中時的顏色 activeColor: Colors.blue), ); }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。