假如你使用旧的接口回调:

通常三步:
1 定义接口和方法;
2 使用接口中方法;
3 继承接口并实现方法;

例:

class XXXAdapter{
    public var mClickCollBack: clickCollBack?= null   //1定义
    interface  clickCollBack {                        //1定义
        fun click(int: Int)                           //1定义
    }
   
         itemView.setOnClickListener {
                mClickCollBack?.click(position)  //2使用
         }
}

   实现:

    adapter.mClickCollBack = object : XXXAdapter.clickCollBack {
            override fun click(int: Int) {
                 //做你的事
            }
    }

使用Kotlin呢?   

也是三步:

1定义参数方法  2 直接调用  3直接实现

class XXXAdapter(var click:(int: Int) -> Unit){
    
   
         itemView.setOnClickListener {
                click(position)  //2使用
         }

}
    adapter.click{
        // it 直接表示上级传下来的position
    }

更多Kotlin相关内容请看这里:

https://blog.csdn.net/qq_39731011/category_10265284.html?fromshare=blogcolumn&sharetype=blogcolumn&sharerId=10265284&sharerefer=PC&sharesource=qq_39731011&sharefrom=from_linkicon-default.png?t=O83Ahttps://blog.csdn.net/qq_39731011/category_10265284.html?fromshare=blogcolumn&sharetype=blogcolumn&sharerId=10265284&sharerefer=PC&sharesource=qq_39731011&sharefrom=from_link

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐