我正在构建一个 android 应用程序,它有一个 ListView ,在 ListView 中,有一个点击监听器,包含一个 onItemClick 方法。所以我有这样的东西:
public class myList extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
getListView().setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
/* Do something*/
}
}
}
通常情况下,这工作正常。然而,很多时候我发现自己太需要使用外部类作为上下文来预制应用程序。到目前为止,我用过:
parent.getContext();
这样做,但我想知道,这是个坏主意吗?我真的不能打电话:
super
因为它不是真正的子类,只是一个嵌入的。那么有没有更好的方法,或者这被认为是可靠的?还有,如果是正确的方式,嵌入方法没有参数获取外部类怎么办?
谢谢。
最佳答案
如果我没有正确理解你的问题,你想从匿名内部类中调用外部类,对吗?为此,请使用以下语法:
myList.this.getContext();
来自匿名内部类的 onItemClick
方法。这是为内部类定义的特殊语法,用于访问包含它的外部类的实例。
关于java - 传入一个嵌入java类的对象作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2664990/