92.android 简单的底部导航栏效果(BottomNavigationBar)

导读:本篇文章讲解 92.android 简单的底部导航栏效果(BottomNavigationBar),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

//先看效果图:

image

 

92.android 简单的底部导航栏效果(BottomNavigationBar)

92.android 简单的底部导航栏效果(BottomNavigationBar)

//第一步 导入第三方依赖: 

 

implementation 'com.ashokvarma.android:bottom-navigation-bar:1.4.1'//底部导航栏

//第二步 布局:

 

<com.ashokvarma.bottomnavigation.BottomNavigationBar
    android:layout_alignParentBottom="true"
    android:id="@+id/mButton"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"></com.ashokvarma.bottomnavigation.BottomNavigationBar>

//第三步 在Activity初始化使用:

 

public class MainActivity extends AppCompatActivity {
    private BottomNavigationBar mButton;

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

    private void initView() {

        mButton = (BottomNavigationBar) findViewById(R.id.mButton);
        BadgeItem badgeItem = new BadgeItem().setBackgroundColor(Color.RED).setText("99");//初始化BadgeItem标记,一般用作消息提醒的,设置颜色,设置内容
        //BadgeItem badge=new BadgeItem()
        // .setBorderWidth(2)//Badge的Border(边界)宽度
        // .setBorderColor("#FF0000")//Badge的Border颜色
        // .setBackgroundColor("#9ACD32")//Badge背景颜色
        // .setGravity(Gravity.RIGHT| Gravity.TOP)//位置,默认右上角
        // .setText("2")//显示的文本
        // .setTextColor("#F0F8FF")//文本颜色
        // .setAnimationDuration(2000)
        // .setHideOnSelect(true)//当选中状态时消失,非选中状态显示


        //设置模式为固定模式,不会动,没有水波纹,填充模式,未选中的Item会显示文字,没有换挡动画。
        //mButton.setMode(BottomNavigationBar.MODE_FIXED);
        //如果设置的Mode为MODE_FIXED,使用BACKGROUND_STYLE_STATIC 。
        //mButton.setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_STATIC);
        //BACKGROUND_STYLE_STATIC,点击的时候没有水波纹效果,航条的背景色是白色,加上setBarBackgroundColor()可以设置成你所需要的任何背景颜色


        //换挡模式,未选中的Item不会显示文字,选中的会显示文字,在切换的时候会有一个像换挡的动画。
        //mButton.setMode(BottomNavigationBar.MODE_SHIFTING);
        //如果Mode为MODE_SHIFTING将使用BACKGROUND_STYLE_RIPPLE。
        //mButton.setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_RIPPLE);
        //BACKGROUND_STYLE_RIPPLE,点击的时候有水波纹效果,导航条的背景色是你设置的处于选中状态的 Item的颜色(ActiveColor),也就是setActiveColorResource这个设置的颜色


        //---设置Item未选中颜色方法两种---
        // 1.new BottomNavigationItem().setInActiveColorResource(R.color.white))
        //2.new BottomNavigationItem().setInActiveColor()
        //---设置Item选中颜色方法两种---
        //1.new BottomNavigationItem().setActiveColorResource()
        //2.new BottomNavigationItem().setActiveColor()


        //mButton.setBarBackgroundColor(R.color.colorAccent);//设置栏背景颜色

        mButton
                .setActiveColor("#ff0000") //设置选中的颜色,红色,好像不管用
                .setInActiveColor("#FFFFFF")//设置未选中的颜色,白色
                .setBarBackgroundColor("#000000");//设置栏背景颜色为黑色,这个可以代替设置选中的颜色。

        mButton.addItem(new BottomNavigationItem(R.mipmap.home_setting_press, "淡绿色").setActiveColor("#bedeba"))
                .addItem(new BottomNavigationItem(R.mipmap.home_setting_press, "淡粉色").setActiveColor("#efd2d2"))
                .addItem(new BottomNavigationItem(R.mipmap.home_setting_press, "淡蓝色").setActiveColor("#b0cede").setBadgeItem(badgeItem))//为Item添加Badge标记
                .addItem(new BottomNavigationItem(R.mipmap.home_setting_press, "淡黄色").setActiveColor("#d2cca1"))
                .setFirstSelectedPosition(0)//设置优先选择位置,也就是默认一进来选中哪个
                .initialise(); //所有的设置需在调用该方法前完成

        mButton.setTabSelectedListener(new BottomNavigationBar.OnTabSelectedListener() {//这里也可以使用SimpleOnTabSelectedListener
            @Override
            public void onTabSelected(int position) {
                //未选中 -> 选中
                Toast.makeText(MainActivity.this, position + "未选中 -> 选中", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onTabUnselected(int position) {
                //选中 -> 未选中
            }

            @Override
            public void onTabReselected(int position) {
                //选中 -> 选中
            }
        });

    }
}

//———————————————————————–完——————————————————————————

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/118302.html

(0)

相关推荐

发表回复

登录后才能评论
半码博客——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!