实例介绍
PagerBottomTabStrip:Android底部导航栏
该库是一个Android页面底部和侧边的导航栏,支持Material Design规范的样式,可以自定义Item进行扩展,自带消息圆点,可在构建完成之后动态增加/删除导航按钮、修改图标和文字,方便适配常用的ViewPager,支持与Navigation Architecture Component配合使用,同时也支持AndroidX。
实现效果图
自定义扩展例子
Demo中的例子
引入库
repositories { mavenCentral() } dependencies { implementation 'me.majiajie:pager-bottom-tab-strip:2.4.0' }
【实例截图】
【核心代码】
文件清单
└── PagerBottomTabStrip-fae38611c6d35a001455abfa74ea6f8d0abd66a3
├── app
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ └── main
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── me
│ │ └── majiajie
│ │ └── pagerbottomtabstriptest
│ │ ├── behavior
│ │ │ └── BottomViewBehavior.java
│ │ ├── BehaviorActivity.java
│ │ ├── custom
│ │ │ ├── OnlyIconItemView.java
│ │ │ ├── OnlyTextTab.java
│ │ │ ├── SpecialTab.java
│ │ │ ├── SpecialTabRound.java
│ │ │ └── TestRepeatTab.java
│ │ ├── Custom2Activity.java
│ │ ├── CustomActivity.java
│ │ ├── HideActivity.java
│ │ ├── MainActivity.java
│ │ ├── MaterialDesignActivity.java
│ │ ├── NavigationComponentActivity.java
│ │ ├── NavigationComponentPageAFragment.java
│ │ ├── NavigationComponentPageBFragment.java
│ │ ├── NavigationComponentPageCFragment.java
│ │ ├── other
│ │ │ ├── AFragment.java
│ │ │ ├── MyViewPagerAdapter.java
│ │ │ └── NoTouchViewPager.java
│ │ ├── SpecialActivity.java
│ │ ├── TestControllerActivity.java
│ │ ├── utils
│ │ │ └── BottomNavigationUtils.java
│ │ ├── VerticalActivity.java
│ │ └── VerticalCustomActivity.java
│ └── res
│ ├── drawable
│ │ ├── ic_audiotrack_black_24dp.xml
│ │ ├── ic_book_black_24dp.xml
│ │ ├── ic_favorite_gray_24dp.xml
│ │ ├── ic_favorite_teal_24dp.xml
│ │ ├── ic_nearby_gray_24dp.xml
│ │ ├── ic_nearby_teal_24dp.xml
│ │ ├── ic_news_black_24dp.xml
│ │ ├── ic_ondemand_video_black_24dp.xml
│ │ ├── ic_restore_gray_24dp.xml
│ │ ├── ic_restore_teal_24dp.xml
│ │ ├── special_tab_bg.xml
│ │ ├── special_tab_round_bg.xml
│ │ ├── tab_background.xml
│ │ └── tab_vertical_background.xml
│ ├── drawable-V21
│ │ ├── tab_background.xml
│ │ └── tab_vertical_background.xml
│ ├── layout
│ │ ├── activity_behavior.xml
│ │ ├── activity_hide.xml
│ │ ├── activity_main.xml
│ │ ├── activity_navigation_component.xml
│ │ ├── activity_special.xml
│ │ ├── activity_test_controller.xml
│ │ ├── activity_vertical_custom.xml
│ │ ├── fragment_navigation_page.xml
│ │ ├── item_only_icon.xml
│ │ ├── item_only_text.xml
│ │ ├── layout_horizontal.xml
│ │ ├── layout_vertical.xml
│ │ ├── recyclerview.xml
│ │ ├── special_tab_round.xml
│ │ └── special_tab.xml
│ ├── mipmap-hdpi
│ │ └── ic_launcher.png
│ ├── mipmap-mdpi
│ │ └── ic_launcher.png
│ ├── mipmap-xhdpi
│ │ └── ic_launcher.png
│ ├── mipmap-xxhdpi
│ │ └── ic_launcher.png
│ ├── mipmap-xxxhdpi
│ │ └── ic_launcher.png
│ ├── navigation
│ │ └── nav_test.xml
│ ├── values
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── values-w820dp
│ └── dimens.xml
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── img
│ ├── demo1.gif
│ ├── demo2.gif
│ ├── demo3.gif
│ ├── demo4.gif
│ ├── demo5.gif
│ ├── demo6.png
│ ├── demo7.png
│ ├── demo8.png
│ ├── demo.png
│ └── tint.png
├── LICENSE
├── pager-bottom-tab-strip
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── me
│ │ │ └── majiajie
│ │ │ └── pagerbottomtabstrip
│ │ │ ├── BottomLayoutController.java
│ │ │ ├── internal
│ │ │ │ ├── BaselineLayout.java
│ │ │ │ ├── CustomItemLayout.java
│ │ │ │ ├── CustomItemVerticalLayout.java
│ │ │ │ ├── MaterialItemLayout.java
│ │ │ │ ├── MaterialItemVerticalLayout.java
│ │ │ │ ├── RoundMessageView.java
│ │ │ │ └── Utils.java
│ │ │ ├── item
│ │ │ │ ├── BaseTabItem.java
│ │ │ │ ├── MaterialItemView.java
│ │ │ │ ├── NormalItemView.java
│ │ │ │ └── OnlyIconMaterialItemView.java
│ │ │ ├── ItemController.java
│ │ │ ├── listener
│ │ │ │ ├── OnTabItemSelectedListener.java
│ │ │ │ └── SimpleTabItemSelectedListener.java
│ │ │ ├── MaterialMode.java
│ │ │ ├── NavigationController.java
│ │ │ └── PageNavigationView.java
│ │ └── res
│ │ ├── drawable
│ │ │ ├── material_item_background.xml
│ │ │ └── round.xml
│ │ ├── layout
│ │ │ ├── item_material_only_icon.xml
│ │ │ ├── item_material.xml
│ │ │ ├── item_normal.xml
│ │ │ └── round_message_view.xml
│ │ └── values
│ │ ├── strings.xml
│ │ └── values.xml
│ └── upload_to_maven_central.gradle
├── README.md
└── settings.gradle
41 directories, 118 files
相关软件
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论