android实现简单底部导航栏

本文实例为大家分享了android实现底部导航栏的具体代码,供大家参考,具体内容如下

常见的底部导航栏

android实现简单底部导航栏_第1张图片

动态效果

android实现简单底部导航栏_第2张图片

实现步骤

1.底部导航栏样式

我们应该在项目的res文件夹下新建一个menu文件夹,用来装menu布局文件




    

    

    

    

android实现简单底部导航栏_第3张图片

2.新建四个fragment组件

每一个fragment的组件内容相同

android实现简单底部导航栏_第4张图片

四个fragement对应的layout

四个fragment布局文件的内容也相同,写上内容以区别是哪个页面




    

android实现简单底部导航栏_第5张图片

3.建议navigation布局文件(至关重要)

这个文件指定了页面上显式那些fragment组件

在项目res下新建一个文件夹专门用来存放此文件

android实现简单底部导航栏_第6张图片

id取值一定要与底部导航栏样式里面指定的ID相同,因为android自动根据底部按钮的ID来绑定按钮与fragment




    

    

    

    

4.activity

布局文件



    
    
    
    
    
    

内容(绑定Navigation与BottomNavigationView)

public class Main2Activity extends AppCompatActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);

        // 获取页面上的底部导航栏控件
        BottomNavigationView navView = findViewById(R.id.nav_view);

        // 配置navigation与底部菜单之间的联系
        // 底部菜单的样式里面的item里面的ID与navigation布局里面指定的ID必须相同,否则会出现绑定失败的情况
        AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
                R.id.navigation_home,R.id.navigation_edit,R.id.navigation_view,R.id.navigation_user)
                .build();
        // 建立fragment容器的控制器,这个容器就是页面的上的fragment容器
        NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
        
        // 启动
        NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
        NavigationUI.setupWithNavController(navView, navController);


    }


}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

你可能感兴趣的:(android实现简单底部导航栏)