要在Android ViewPager2中使用FragmentStateAdapter显示每个Fragment的菜单,你可以按照以下步骤进行操作:
implementation 'androidx.viewpager2:viewpager2:1.0.0'
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentActivity
import androidx.viewpager2.adapter.FragmentStateAdapter
class MyAdapter(fragmentActivity: FragmentActivity) :
FragmentStateAdapter(fragmentActivity) {
override fun getItemCount(): Int {
return 3 // 返回ViewPager中Fragment的数量
}
override fun createFragment(position: Int): Fragment {
// 根据位置创建并返回对应的Fragment
return when (position) {
0 -> Fragment1()
1 -> Fragment2()
2 -> Fragment3()
else -> throw IndexOutOfBoundsException()
}
}
}
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.viewpager2.widget.ViewPager2
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val viewPager2: ViewPager2 = findViewById(R.id.viewPager2)
val adapter = MyAdapter(this)
viewPager2.adapter = adapter
}
}
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
class Fragment1 : Fragment() {
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
val view = inflater.inflate(R.layout.fragment1, container, false)
// 在这里添加Fragment的菜单逻辑
return view
}
}
以上就是在Android ViewPager2中使用FragmentStateAdapter显示每个Fragment的菜单的解决方法。你可以根据自己的需求进行相应的修改和适配。