小编man*_*ing的帖子

我如何在Kotlin中使用回调?

我有View和一个CircleShape,它应该在此视图中显示吐司.我在主Activity中使用它.这是我的界面

interface OnClickListenerInterface {
  fun onClick()
}
Run Code Online (Sandbox Code Playgroud)

它是我的视图中的CircleShape(在我的xml中是View)和监听器.我想在我的Activity中实现OnClick.

 var listener: OnClickListenerInterface? = null

 mCircleShape.setOnClickListener(View.OnClickListener {
      if (listener == null) return@OnClickListener
      listener!!.onClick()
    })
Run Code Online (Sandbox Code Playgroud)

我知道,在Kotlin getter和setter通用自动机,但我如何设置监听器,如果它是私有的.它是我的Activity的代码,但它不起作用

CircleShape.listener  = object :OnClickListenerInterface{
      override fun onClick() {
        ToastUtils.showSuccessMessage(getContext(),"pressed")
      }
    }
Run Code Online (Sandbox Code Playgroud)

我应该如何在Kotlin中使用Callback,onClickListenere?

java xml android listener kotlin

21
推荐指数
6
解决办法
3万
查看次数

为什么Epoxy不生成模型类?

我想将 Epoxy 用于带有 kotlin 的 recyclerView,但 Epoxy Model 没有生成 PostModel_() 类,它有什么问题?

@EpoxyModelClass(layout = R.layout.iteam)
abstract class PostModel : EpoxyModelWithHolder<PostModel.PostHolder>() {
  @EpoxyAttribute
  lateinit var userName: String
  @EpoxyAttribute
  lateinit var avatarIcon: Drawable
  @EpoxyAttribute
  lateinit var post: Drawable

  override fun bind(holder: PostHolder) {
    holder.avatarIcon.setImageDrawable(avatarIcon)
    holder.post.setImageDrawable(post)
    holder.name.text = userName

  }

  class PostHolder : BaseEpoxyHolder() {
    @BindView(R.id.name)
    lateinit var name: TextView
    @BindView(R.id.ic_avatar)
    lateinit var avatarIcon: ImageView
    @BindView(R.id.post)
    lateinit var post: ImageView
  }

}
Run Code Online (Sandbox Code Playgroud)

java android kotlin epoxy epoxy-modelview

3
推荐指数
1
解决办法
661
查看次数

两个构造函数之间有什么不同?

这种类型的构造函数有什么不同?

class ColorsArray(context: Context) {}
Run Code Online (Sandbox Code Playgroud)

class ColorsArray(var context: Context){}
Run Code Online (Sandbox Code Playgroud)

kotlin

2
推荐指数
1
解决办法
87
查看次数

标签 统计

kotlin ×3

android ×2

java ×2

epoxy ×1

epoxy-modelview ×1

listener ×1

xml ×1