日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android kotlin实现底部导航栏

發布時間:2023/12/10 Android 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android kotlin实现底部导航栏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、實現效果,可點擊或者滑動切換fragment

點擊? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?滑動

? ? ? ? ? ? ? ? ? ?

?

?實現方法:

1、創建三個fragment.kt

2、創建fragmentAdapter

class MyFragmentAdapter(fragmentManager: FragmentManager, private val fragmentList: List<Fragment>, private val titleList: List<String>, private val context: Context) : FragmentPagerAdapter(fragmentManager) {override fun getItem(position: Int): Fragment {return fragmentList[position]}override fun getCount(): Int {return titleList.size}//注意!!!這里就是我們自定義的布局tab_itemfun getCustomView(position: Int): View {val view = LayoutInflater.from(context).inflate(R.layout.tab_item, null)val iv = view.findViewById(R.id.tab_iv) as ImageViewval tv = view.findViewById(R.id.tab_tv) as TextViewwhen (position) {0 -> {//drawable代碼在文章最后貼出iv.setImageDrawable(context.resources.getDrawable(R.drawable.home_icon_selector))tv.text = "首頁"}1 -> {iv.setImageDrawable(context.resources.getDrawable(R.drawable.txl_icon_selector))tv.text = "通訊錄"}2 -> {iv.setImageDrawable(context.resources.getDrawable(R.drawable.wd_icon_selector))tv.text = "我的"}}return view} }

3、ViewPager加載fragment

?

private lateinit var fragment3:BlankFragment3 private lateinit var fragment2:BlankFragment2 private lateinit var fragment:BlankFragment private fun getdata() {fragment = BlankFragment()fragment2 = BlankFragment2()fragment3 = BlankFragment3()fragmentList!!.add(fragment)fragmentList!!.add(fragment2)fragmentList!!.add(fragment3)titleList!!.add("首頁")titleList!!.add("通訊錄")titleList!!.add("我的")activity_tablayout.setTabMode(TabLayout.MODE_FIXED)//不可以輪動activity_tablayout.addTab(activity_tablayout.newTab().setText(titleList!!.get(0)))activity_tablayout.addTab(activity_tablayout.newTab().setText(titleList!!.get(1)))activity_tablayout.addTab(activity_tablayout.newTab().setText(titleList!!.get(2)))activity_viewPager.adapter=MyFragmentAdapter(getSupportFragmentManager(), fragmentList!!, titleList!!,this)activity_tablayout.setupWithViewPager(activity_viewPager)for (i in 0..2) {val tab = activity_tablayout.getTabAt(i)//注意!!!這里就是添加我們自定義的布局tab!!.setCustomView(adapter!!.getCustomView(i))//這里是初始化時,默認item0被選中,setSelected(true)是為了給圖片和文字設置選中效果,代碼在文章最后貼出if (i == 0) {(tab!!.getCustomView()!!.findViewById(R.id.tab_iv) as ImageView).isSelected = true(tab!!.getCustomView()!!.findViewById(R.id.tab_tv) as TextView).isSelected = true}}}

demo云盤鏈接:https://pan.baidu.com/s/1HJKbRY0WBXGMfwmU-AP7HA

密碼在線回復:QQ1085220040

kotlin工程demo鏈接:https://download.csdn.net/download/meixi_android/11212091

?

總結

以上是生活随笔為你收集整理的Android kotlin实现底部导航栏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。