等同于在kotlin上实现java接口

我是Kotlin新手,我想知道如何在kotlin上实现java接口,我在android上使用它,

 public interface OnClickedItemListener { void onClick(boolean state); } 

OnClickedItemListener是我的自定义接口,我想在kotlin中实现,我有这个类:

 class MyProgressView : RelativeLayout { constructor(context: Context?) : super(context) { init() } constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) { init() } constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) { init() } private fun init() { LayoutInflater.from(context).inflate(R.layout.download_progress_layout, this) cusotmView.setOnClickListener { } } } 

在这个什么相当于这个cods例如:

 class MyProgressView : RelativeLayout { constructor(context: Context?) : super(context) { init() } constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) { init() } constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) { init() } private fun init() { LayoutInflater.from(context).inflate(R.layout.download_progress_layout, this) cusotmView.setOnClickListener { /* if(onitemClickListener!=null) onitemClickListener.onClick() */ } } /* public interface OnitemClickListener{ void onClick(); } public static void setOnitemClickListener(OnitemClickListener listener){ onitemClickListener = l; } */ } 

在您的活动中使用setOnClickItemListener

 class MyProgressView : RelativeLayout, OnClickedItemListener { var onClickItemListener: OnClickedItemListener? = null constructor(context: Context?) : super(context) { init() } constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) { init() } constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) { init() } private fun init() { LayoutInflater.from(context).inflate(R.layout.download_progress_layout, this) } override fun onClick(state: Boolean) { //do something on onclick } fun setOnClickedItemListener(onclickItemListener: OnClickedItemListener) { this.onClickItemListener = onclickItemListener } } 

我希望这可以帮助你。