lmw
2023-05-12 f67802a41f9e01444d1115f34ecc6e1beb05fc3b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package com.fuban.user.ui.trip.adapter
 
import android.view.ViewGroup
import android.widget.ImageView
import androidx.recyclerview.widget.RecyclerView
import com.facebook.drawee.generic.GenericDraweeHierarchyBuilder
import com.facebook.drawee.generic.RoundingParams
import com.facebook.drawee.view.SimpleDraweeView
import com.fuban.user.network.entity.Message
import com.fuban.user.views.textbanner.utils.DisplayUtils
import com.youth.banner.adapter.BannerAdapter
 
 
class AdsAdapter(datas:ArrayList<Message>): BannerAdapter<Message, AdsAdapter.BannerViewHolder>(datas){
    override fun onCreateHolder(parent: ViewGroup, viewType: Int): BannerViewHolder {
        val imageView = SimpleDraweeView(parent.context)
        //注意,必须设置为match_parent,这个是viewpager2强制要求的
        //注意,必须设置为match_parent,这个是viewpager2强制要求的
        imageView.layoutParams = ViewGroup.LayoutParams(
            ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.MATCH_PARENT
        )
        val roundingParams = RoundingParams()
        roundingParams.setCornersRadius(DisplayUtils.dip2px(parent.context,8f).toFloat())
        val build = GenericDraweeHierarchyBuilder(parent.context.resources).build()
        build.roundingParams = roundingParams
        imageView.hierarchy = build
        return BannerViewHolder(imageView)
    }
 
    override fun onBindView(holder: BannerViewHolder, data: Message, position: Int, size: Int) {
        (holder.imageView as SimpleDraweeView).setImageURI(data.imgUrl)
    }
 
    class BannerViewHolder(view: ImageView) :
        RecyclerView.ViewHolder(view) {
        var imageView: ImageView
 
        init {
            imageView = view
        }
    }
}