android - 静态设置 onClickListener,内存泄漏?

标签 android memory-leaks static listener android-context

我正在考虑制作一个可重用的函数,使 View 可点击以关闭 - 在此示例中,RelativeLayoutAO 是背景。

    final RelativeLayout rlAO = (RelativeLayout) findViewById(R.id.RelativeLayoutAO);
    Utility.setOnClickFinish(rlAO);

然后在 Utility 类中:

public class Utility {
    public static void setOnClickFinish(View view) {
        view.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View clickedView) {
            ((Activity) clickedView.getContext()).finish();
        }
    });
}
}

这会导致内存泄漏吗?

最佳答案

不,这不应该导致内存泄漏。

根据您的问题标题,我认为您可能误解了此处 static 关键字的含义。您没有“静态”设置任何内容。 setOnClickFinish() 被标记为静态的事实仅仅意味着它是一个类方法。

关于android - 静态设置 onClickListener,内存泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6742284/

相关文章:

java - ActionBarCompat 无法从父类(super class)中找到方法

python - 在python中查找对对象的所有引用

java - Android Studio 调用静态游戏资源绘制时出现 java.lang.ExceptionInInitializerError

ios - UIAlertController 内存泄漏/问题 - Swift

java - 我需要清理 Rhino ScriptableObject 实例吗?

java - 如何正确调用静态方法

java - 哪个将首先加载静态变量或静态 block ?

android - 未调用 HmsMessageService onMessageReceived

c# - 像 imagecell xaml 这样的自定义视单元?

android - Android : Android App is not responding, close it?