activity 设置 setFinishOnTouchOutside 不生效
时间: 2023-12-14 07:38:15 浏览: 166
android弹出activity设置大小的方法
`setFinishOnTouchOutside` 是一个 Activity 的方法,用来设置当用户在 Activity 外部点击时是否关闭该 Activity。默认情况下,该方法是生效的。但是,如果你在 Activity 的布局文件中设置了一个可点击的 View(例如 Button),那么点击该 View 时不会触发 `setFinishOnTouchOutside` 方法。
如果你想要在点击布局文件外部时关闭 Activity,可以使用以下代码:
```java
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_OUTSIDE) {
finish();
return true;
}
return super.onTouchEvent(event);
}
```
这个方法会在用户点击 Activity 外部时触发,并且关闭 Activity。
阅读全文