你好,歡迎來到IOS教程網

 Ios教程網 >> IOS使用技巧 >> IOS7技巧 >> 淺析使用TabLayout做底部欄的例子

淺析使用TabLayout做底部欄的例子

編輯:IOS7技巧
本文章來為各位介紹一篇關於淺析使用TabLayout做底部欄的例子,希望這個例子能夠幫助到各位朋友。

無標題

很多時候我們一般使用TabHost或者Fragment來做底部欄部分,但是現在有了TabLayout我們可以更容易的達到我們需要的效果,通過TabLayout可以做成微信那種底部可以滑動的效果,也可以做成點擊的效果,下面說一下我做的點擊效果的底部欄。先貼上布局

 代碼如下 復制代碼

<com.flyco.tablayout.CommonTabLayout
android:id="@+id/tl_3"
android:layout_alignParentBottom="true"
android:layout_width="match_parent"
android:layout_height="48dp"
android:background="#ffffff"
tl:tl_iconGravity="LEFT"
tl:tl_iconHeight="49dp"
tl:tl_iconMargin="5dp"
tl:tl_iconWidth="49dp"
tl:tl_indicator_bounce_enable="false"
tl:tl_indicator_gravity="TOP"
/>

通過簡單的屬性設置就可以達到效果,然後在這個布局上加一個FrameLayout就ok,

 

 代碼如下 復制代碼 public class main extends FragmentActivity {
private Context context = this;
private ArrayList<Fragment> fragments = new ArrayList<>();
private int[] iconUnselectIds = {//底部點擊時顯示的圖標
R.mipmap.icon_indexl_nav_home_gary, R.mipmap.icon_indexl_nav_shopcar_gary,
R.mipmap.icon_indexl_nav_inquiry_gary};
private int[] iconSelectIds = {//未點擊時顯示的圖標
R.mipmap.icon_index_nav_home_yellow, R.mipmap.icon_indexl_nav_shopcar_yellow,
R.mipmap.icon_indexl_nav_inquiry_yellow};
private ArrayList<CustomTabEntity> tabs = new ArrayList<>();
private CommonTabLayout tl_3;
View view;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initView();
 
}
private void initView(){
//底部欄三個按鈕對應的Fragment
fragments=new ArrayList<Fragment>();
fragments.add(new text1());
fragments.add(new text2());
fragments.add(new text3());
for (int i = 0; i < 3; i++) {//給底部欄加入圖標
tabs.add(new entity(null, iconSelectIds[i], iconUnselectIds[i]));
}
view=getWindow().getDecorView();
tl_3=ViewFindUtils.find(view, R.id.tl_3);
tl_3.setTabData(tabs, getSupportFragmentManager(), R.id.fl_change, fragments);
 
tl_3.setOnTabSelectListener(new OnTabSelectListener() {
@Override
public void onTabSelect(int position) {
 
}
 
@Override
public void onTabReselect(int position) {
 
}
});
}
 
}

這是我在github中看到的案例,經過修改後非常符合自己的要求,簡短的代碼就可以完成我們的要求。大家有興趣的可以去github上多看看這方面的。

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved