【问题标题】:how can i add counter to viewpager2我如何向 viewpager2 添加计数器
【发布时间】:2022-12-31 22:05:30
【问题描述】:

image

我找不到如何做计数器算法

这是我为我的 viewpager 写的适配器

类 ViewPagerAdapter(val 图像:列表,val mContext:上下文): RecyclerView.Adapter<ViewPagerAdapter.ViewPagerViewHolderClass>() {

inner class ViewPagerViewHolderClass(view: View) : RecyclerView.ViewHolder(view){
    val viewPagerFoto : ImageView
    init {
        viewPagerFoto = view.findViewById(R.id.viewPagerFoto)
    }
}


override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewPagerViewHolderClass {
    val view = LayoutInflater.from(mContext).inflate(R.layout.item_view_pager,parent,false)
    return ViewPagerViewHolderClass(view)
}

override fun onBindViewHolder(holder: ViewPagerViewHolderClass, position: Int) {
    val image = images[position]
    holder.viewPagerFoto.setImageResource(image)
}

override fun getItemCount(): Int {
    return images.size
}

}

我的家片段

我正在对 homefragment 执行操作

class HomeFragment : Fragment() {

    private lateinit var _binding : FragmentHomeBinding
    
    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        _binding = FragmentHomeBinding.inflate(inflater,container,false)
        
        val images = listOf(
            R.drawable.f1,
            R.drawable.f2,
            R.drawable.f3,
            R.drawable.f4,
            R.drawable.f5,
            R.drawable.f6,
        )
        val adapter by lazy { ViewPagerAdapter(images,requireContext()) }
        _binding.viewPager.adapter = adapter


        
        return _binding.root
    }




}

【问题讨论】:

    标签: kotlin android-viewpager2


    【解决方案1】:

    在 onBindViewHolder 方法中,您有位置参数。您可以将它传递给 viewHolder 并使用它

    【讨论】:

      【解决方案2】:
          override fun onBindViewHolder(holder: ViewPagerViewHolderClass, position: Int) {
              val image = images[position]
              holder.viewPagerFoto.setImageResource(image)
          }
      

      你可以使用位置参数,如果你想在那里使用它。 但我建议在 ViewPagerViewHolderClass 上使用它并声明名为 position 的新参数并将其传递到那里。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-16
        相关资源
        最近更新 更多