Closed yangjiangs closed 6 years ago
收到
好的
今天用,kotlin 还是没支持。询问有什么解决方案么
该问题合并到 #80
你能贴一下代码吗? 我用kotlin 试了一下没问题,代码如下:
class MainActivity : AppCompatActivity() {
private var mBanner:MZBannerView<Any>? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
mBanner = findViewById(R.id.banner)
var listString = listOf(R.drawable.banner1,R.drawable.banner2,R.drawable.banner3)
mBanner?.setPages(listString, {
BannerViewHolder()
})
}
override fun onResume() {
super.onResume()
mBanner?.start()
}
override fun onPause() {
super.onPause()
mBanner?.pause()
}
}
class BannerViewHolder:MZViewHolder<Int>{
private var mImageView:ImageView? = null
override fun onBind(p0: Context?, p1: Int, p2: Int?) {
if (p2 != null) {
mImageView?.setImageResource(p2)
}
}
override fun createView(context: Context?): View {
val view = LayoutInflater.from(context).inflate(R.layout.banner, null)
mImageView = view.findViewById(R.id.image_view)
return view
}
}
Out-projected type 'MZBannerView<>!' prohibits the use of 'public open fun setPages(datas: (Mutable)List<T!>!, mzHolderCreator: MZHolderCreator<(raw) MZViewHolder<>!>!): Unit defined in com.zhouwei.mzbanner.MZBannerView'
作者考虑 kolitn 兼容。控件没有指明泛型的实例