非常好用的底部导航栏

我只是一个虾纸丫 提交于 2019-12-06 03:10:05

在做底部导航栏时发现自己写选择器之类的非常麻烦于是上网搜了一下发现一个非常好用的底部导航栏:
简书:http://www.jianshu.com/p/ade8485a16be
Github:https://github.com/hujinmeng/MyApplication
我选择了版本比较高的。

compile 'com.hjm:BottomTabBar:1.1.1'

具体方法可以看连接地址:
下面贴一下我自己引用写的代码感觉比较好用并且基本上都可以满足要求:
布局里面:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"

    tools:context="com.example.administrator.bottommenu.MainActivity">

<com.hjm.bottomtabbar.BottomTabBar
    xmlns:hjm="http://schemas.android.com/apk/res-auto"
    android:id="@+id/bottom_tab_bar"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    hjm:tab_font_size="12sp"
    hjm:tab_img_font_padding="0dp"
    hjm:tab_img_height="40dp"
    hjm:tab_img_width="40dp"
    hjm:tab_padding_bottom="5dp"
    hjm:tab_padding_top="8dp"
    hjm:tab_selected_color="#ffe866"
    hjm:tab_unselected_color="#1a0204"

    />
</RelativeLayout>

具体的逻辑代码

package com.example.administrator.bottommenu;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import com.hjm.bottomtabbar.BottomTabBar;

public class MainActivity extends AppCompatActivity {
    private BottomTabBar tabBar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tabBar= (BottomTabBar) findViewById(R.id.bottom_tab_bar);
        //这个init ( getSupportFragmentManager() )方法一定要第一个调用,没有//这个初始化,后边什么也做不了。
        tabBar.init(getSupportFragmentManager())
                .addTabItem("漫画",R.drawable.ic_tabbar_feed_pressed, R.drawable.ic_tabbar_feed_normal, OneFragment.class)
                .addTabItem("发现", R.drawable.ic_tabbar_discover_pressed, R.drawable.ic_tabbar_discover_normal,TwoFragment.class)
                .addTabItem("V社区",R.drawable.ic_tabbar_home_pressed, R.drawable.ic_tabbar_home_normal, ThreeFragment.class)
                .addTabItem("我的",  R.drawable.ic_tabbar_me_pressed,  R.drawable.ic_tabbar_me_normal,FourFragment.class);
    }
}

布局里面的一些参数
参数名 涵义
tab_bar_background BottomTabBar的整体背景颜色
tab_img_width 图片宽度
tab_img_height 图片高度
tab_font_size 文字尺寸
tab_padding_top 上边距
tab_img_font_padding 图片文字间隔
tab_padding_bottom 下边距
tab_isshow_divider 是否显示分割线
tab_divider_height 分割线高度
tab_divider_background 分割线背景
tab_selected_color 选中的颜色
tab_unselected_color 未选中的颜色
效果图片:
效果图片

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!