Android学习Material design中的底部导航栏BottomNavigationBar
来源:互联网 发布:好用的编程工具 编辑:程序博客网 时间:2024/05/20 18:02
今天写项目的之于看了一下material Design关于底座图标BottomNacigationBar的介绍,网上的资料已经很详细了,在此留下记录便于以后查找.
首先要添加项目依赖
compile 'com.ashokvarma.android:bottom-navigation-bar:1.3.1'
我们也可以点击file选中Project Structure ,然后选择Dependencies,点击那个绿色的加号就可以搜索我们需要的依赖了,输入关键字选择即可.项目开始首先是一个很简单的XML界面
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:id="@+id/tb" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" /> <com.ashokvarma.bottomnavigation.BottomNavigationBar android:id="@+id/bottom_navigation_bar" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" /></RelativeLayout>
public class FindResourceActivity extends BaseActivity implements BottomNavigationBar.OnTabSelectedListener { private BottomNavigationBar bar; private ExpertFragment expertFragment; private AgentFragment agentFragment; private BuyFragment buyFragment; private InstitutionFragment institutionFragment; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_findresource); bar = (BottomNavigationBar) findViewById(R.id.bottom_navigation_bar); bar.setMode(BottomNavigationBar.MODE_SHIFTING);//点击模式 bar.setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_STATIC); bar.addItem(new BottomNavigationItem(R.mipmap.home, "科研机构")).setActiveColor(R.color.color_6a6a6a). addItem(new BottomNavigationItem(R.mipmap.message, "专家个人")).setActiveColor(R.color.color_F90202). addItem(new BottomNavigationItem(R.mipmap.custom, "中介机构")).setActiveColor(R.color.main_tab_indicator_color). addItem(new BottomNavigationItem(R.mipmap.mine, "技术供需")).setActiveColor(R.color.color_79c051).setFirstSelectedPosition(0).initialise(); bar.setTabSelectedListener(this); setDefaultFragment(); } /** * 设置默认的 */ private void setDefaultFragment() { FragmentManager fm = getFragmentManager(); FragmentTransaction transaction = fm.beginTransaction(); expertFragment = ExpertFragment.newInstance("科研机构"); transaction.replace(R.id.tb,expertFragment); transaction.commit(); } @Override public void onTabSelected(int position) { FragmentManager fm = this.getFragmentManager(); //开启事务 FragmentTransaction transaction = fm.beginTransaction(); switch (position) { case 0: if (institutionFragment == null) { institutionFragment = InstitutionFragment.newInstance("科研机构",""); } transaction.replace(R.id.tb, institutionFragment); break; case 1: if (expertFragment == null) { expertFragment = ExpertFragment.newInstance("专家个人"); } transaction.replace(R.id.tb, expertFragment); break; case 2: if (agentFragment == null) { agentFragment = AgentFragment.newInstance("中介机构",""); } transaction.replace(R.id.tb, agentFragment); break; case 3: if (buyFragment == null) { buyFragment = BuyFragment.newInstance("技术供需",""); } transaction.replace(R.id.tb, buyFragment); break; default: break; } // 事务提交 transaction.commit(); } @Override public void onTabUnselected(int position) { } @Override public void onTabReselected(int position) { }
以上就是java代码具体实现,感觉没什么可说的...构建自己需要的Fragment添加就可以了, 我是添加了4个Fragment,需要注意Fragment引入的包必须是App的不可以是V4包.
操作简单使用方便.
1 0
- Android学习Material design中的底部导航栏BottomNavigationBar
- Android Material Design中的BottomNavigationView实现底部导航栏
- Android Material Design (底部导航栏)
- android Material Design 底部导航栏
- Android 底部导航栏 BottomNavigationBar
- Android------底部导航栏BottomNavigationBar
- Android Material Design BottomNavigationBar
- Android学习之BottomNavigationBar实现Android特色底部导航栏
- Android学习之BottomNavigationBar实现Android特色底部导航栏
- Android学习之BottomNavigationBar实现Android特色底部导航栏
- Android学习之BottomNavigationBar实现Android特色底部导航栏
- Android学习之BottomNavigationBar实现Android特色底部导航栏
- BottomNavigationBar底部导航栏
- android BottomNavigationBar——底部导航栏
- BottomNavigationBar实现Android特色底部导航栏
- BottomNavigationBar实现Android特色底部导航栏
- Android底部导航栏组件:BottomNavigationBar
- BottomNavigationBar实现Android特色底部导航栏
- arcmap 简化线 简化面 没法填写简化容差值 解决方案
- BEMSimpleLineGraph 优雅折线图框架简单使用
- Linux下获取程序绝对路径(全路径)的方法
- leetcode-106. Construct Binary Tree from Inorder and Postorder Traversal
- iOS 开发 新版支付宝支付集成开发详解和遇到的坑 2017-01-04
- Android学习Material design中的底部导航栏BottomNavigationBar
- Android 事件拦截和分发机制分析
- java.math.Math类常用的常量和方法
- SSD Faster-RCNN使用自己的数据fine-tune训练模型
- 2017年英国A-Level考试时间汇总
- Item 29:追求异常安全的代码
- mysql 常用函数
- Java语法笔记
- FFMPEG视音频编解码零基础学习方法