java - 传入一个嵌入java类的对象作为参数

标签 java android class inner-classes

我正在构建一个 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/

相关文章:

java - 我使用 POST 方法在 header 部分发送用户凭据

java - 默认获取android手机号码

c++ - 使用 std::sort 对类 vector 进行降序排序

python - 是否可以用装饰器修改类

java - 管理俱乐部项目的版本控制?

java - 一种从 mac 菜单栏隐藏 java 图标的方法?

android - 如何在 Gradle 中获取当前构建类型

android - TransitionManager.beginDelayedTransition 不动画缩放

android - 在 Android 应用程序的 JSON 中包含小图像

java - 扫雷程序中的 NullPointerException