java - 安卓 Activity : Listener for outside touch event

标签 java android android-activity android-dialog onactivityresult

我有一个显示为对话框的 Activity :

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    super.setTheme(android.R.style.Theme_Dialog);
    setFinishOnTouchOutside(true);
}

当用户通过触摸 Activity-Dialog 窗口外部关闭 Activity-Dialog 时,Activity 结束。

如何为这个事件设置监听器?

这很重要,因为我希望能够调用

setResult(intResultCode, intent);

就在完成之前。

在 onPause() 中调用 setResult() 可能已经太晚了。

最佳答案

为什么要这么拼?只需覆盖 Avtivity 中的 finish() 方法...

@Override
public void finish() {
    setResult(int resultCode, Intent data);
    super.finish();
}

关于java - 安卓 Activity : Listener for outside touch event,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20375436/

相关文章:

java - 非泛型类可以扩展吗?来自通用类或接口(interface)?

Java:方法不返回。 (XComponent.dispose

java - 如何保持用户登录 session ?

Android Studio 登录和退出问题

java - 获取网页内容

android - 在 Android 上同时使用 JavaFx + Activity

java - 使用 JCalendar 使用复杂的 SQL 查询来检查日期/房间的可用性

java - 确定上下文是否是特定 Activity

android - Butterknife 突然停止工作

android - 尽管删除了 SMS 或 CALL LOG 权限,但应用更新在 Play Store 上一次又一次被拒绝