真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在Android中使用PagerBottomTabStrip組件實現(xiàn)一個底部菜單功能

這篇文章將為大家詳細講解有關怎么在Android中使用PagerBottomTabStrip組件實現(xiàn)一個底部菜單功能,文章內(nèi)容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比海城網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式海城網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋海城地區(qū)。費用合理售后完善,十年實體公司更值得信賴。

1、前言

(1)底部選擇菜單功能應該是大多app都會用到的,實現(xiàn)方式也有很多種,比較笨的方法可以自定義一個xml,下方布局樣式,每次點擊不同按鈕時跳轉到不同activity,這個activity重新加載一下底部菜單

(2)今天介紹一個網(wǎng)上比較流行的底部菜單PagerBottomTabStrip功能,主要是這個菜單樣式比價好看,而且點擊時有點擊效果,感覺還是不錯的,而且也可以在菜單上加數(shù)字顯示。功能算是比較全的吧。在GitHub上有2000多個star,所以選擇它作為項目的底部菜單:https://github.com/tyzlmjj/PagerBottomTabStrip。

(3)當然還有一個框架也不錯,可以參考:https://github.com/ogaclejapan/SmartTabLayout

(4)效果圖:

怎么在Android中使用PagerBottomTabStrip組件實現(xiàn)一個底部菜單功能

2、底部導航菜單功能代碼

1、首先需要引用包:

compile 'me.majiajie:pager-bottom-tab-strip:2.2.5'

2、然后寫一個主的activity和底部點擊進入的兩個Fragment:

class MainBottomTabActivity : BaseActivity() {
 private val mFragments = ArrayList()
 var number:Int=8
 override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  setContentView(R.layout.main_bottom_tab)
  //初始化Fragment
  initFragment()
  //初始化底部Button
  initBottomTab()
 }
 /**
  * 初始化四個導航頁面
  */
 fun initFragment(){
  mFragments!!.add(TabBar1Fragment())
  mFragments!!.add(TabBar2Fragment())
  mFragments!!.add(TabBar1Fragment())
  //默認選中第一個
  val transaction = supportFragmentManager.beginTransaction()
  transaction!!.add(R.id.frameLayout, mFragments[0])
  transaction.commitAllowingStateLoss()
 }
 fun initBottomTab(){
  //這里要特別注意,pager_bottom_tab.custom()這句話就是選擇自己需要的樣式
  val navigationController = pager_bottom_tab.custom()
    .addItem(newItem(R.drawable.ic_restore_gray_24dp, R.drawable.ic_restore_teal_24dp, "消息"))
    .addItem(newItem(R.drawable.ic_favorite_gray_24dp, R.drawable.ic_favorite_teal_24dp, "工作"))
    .addItem(newItem(R.drawable.ic_nearby_gray_24dp, R.drawable.ic_nearby_teal_24dp, "我的"))
    .build()
  //設置消息數(shù)
  navigationController.setMessageNumber(1, number)
  //設置顯示小圓點
  navigationController.setHasMessage(0, true)
  //底部按鈕的點擊事件監(jiān)聽
  navigationController.addTabItemSelectedListener(object : OnTabItemSelectedListener {
   override fun onSelected(index: Int, old: Int) {
    val transaction = supportFragmentManager.beginTransaction()
    transaction.replace(R.id.frameLayout, mFragments[index])
    transaction.commitAllowingStateLoss()
    if(index==0){
     navigationController.setHasMessage(0, false)
    }else if(index==1){
     navigationController.setMessageNumber(1, --number)
    }
   }
   override fun onRepeat(index: Int) {}
  })
 }
 //創(chuàng)建一個Item
 private fun newItem(drawable: Int, checkedDrawable: Int, text: String): BaseTabItem {
  val normalItemView = NormalItemView(this)
  normalItemView.initialize(drawable, checkedDrawable, text)
  normalItemView.setTextDefaultColor(Color.GRAY)
  normalItemView.setTextCheckedColor(-0xff6978)
  return normalItemView
 }
}

3、頂部導航功能

(1)定義activity的style

android:theme="@style/AppTheme"

 
 @drawable/splash_bg
 @color/white
 @color/black
 @color/blue
 48dip
 @color/black
 @style/myToolbarNavigationButtonStyle

(2)自定義頂部top.xml



 
  
  
   
  
  
  
  
 
 

  (3)在BaseActivity中寫方法

protected void setTitle(Object title,Boolean right,Object rightContent) {
 try {
  TextView titleText=findViewById(R.id.navication_text);
  titleText.setText((String)title);
  //顯示右側的文字按鈕
  if(right){
   TextView rightText=findViewById(R.id.second_transfer_text);
   rightText.setVisibility(View.VISIBLE);
   rightText.setText((String)rightContent);
  }
 } catch (Exception e) {
  e.printStackTrace();
 }
}
/**
 * 設置點擊左上角的返回事件.默認是finish界面
 */
protected void registerBack() {
 LinearLayout llLeft = findViewById(R.id.back_btn);
 llLeft.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View view) {
   BaseActivity.this.finish();
  }
 });
}

(4)繼承BaseActivity,xml包含includetop.xml然后直接執(zhí)行方法


setTitle("首頁",false,null)
registerBack()

關于怎么在Android中使用PagerBottomTabStrip組件實現(xiàn)一個底部菜單功能就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。


分享標題:怎么在Android中使用PagerBottomTabStrip組件實現(xiàn)一個底部菜單功能
本文來源:http://weahome.cn/article/gogigd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部