在做底部导航栏时发现自己写选择器之类的非常麻烦于是上网搜了一下发现一个非常好用的底部导航栏:
简书: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 未选中的颜色
效果图片:
来源:CSDN
作者:qiaoshi96_bk
链接:https://blog.csdn.net/qiaoshi96_bk/article/details/73716310