我是Kotlin的newby,需要将以下Java类重新编写为Kotlin,并且无法弄清楚如何实现它。
public class TestFragment extends ListFragment {
static interface Listener {
void itemClicked(long id);
};
private Listener listener;
.....
}
这样就可以在@Ovveride onAttach(..)方法中使用“监听器”
override fun onAttach(Context context) {
super.onAttach(context)
listener = context as Listener
}
-----------------更新--------------------
class TestFragment: ListFragment() {
internal interface Listener {
fun itemClicked(id: Long)
}
private var listener: Listener? = null
override fun onAttach(context: Context) {
super.onAttach(context)
listener = context as Listener
}
override fun onListItemClick(listView: ListView, itemView: View, position: Int, id: Long) {
if (listener != null) {
listener!!.itemClicked(id)
}
}
如果您使用的是Android Studio,并且将此代码复制粘贴到IDE中,它将自动询问您是否要将其单独转换为Kotlin。
试试看。
不过,如果您尝试在Kotlin中创建一个单功能界面,我建议您改用High-Order函数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句