我有一个包含以下内容的LoadingListView:
var adapter: ArrayAdapter<*>? = null
private set
删除项目时,我会这样做:
adapter?.remove(wallboardToDelete)
这说:required Nothing! found MyObject
我该如何解决?
我尝试在ListView ArrayAdapter<Any>?
和removeWorks中使用,但是后来我在所有扩展类中的初始化都给我一个问题,说:
我需要ArrayAdapter而不是MyArrayAdapterFromListExtendingThis。
答案 0 :(得分:2)
尝试将您的声明从ArrayAdapter<*>
更改为ArrayAdapter<Any>
。
<*>用于表示您不知道是什么的固定类型,因此它可以包含Int类型,但只能包含Int
答案 1 :(得分:0)
根据您在网站上发表的评论中的代码,为什么不使用这样的内容?
class LoadingListView<T> : RelativeLayout {
var adapter: ArrayAdapter<T>? = null
private set
// ...
fun init(adapter: ArrayAdapter<T>, loadingListListener: LoadingListListener, noTextRes: Int) {
this.adapter = adapter;
// ...
}
// ...
}