1

在我的应用程序中,我在简单对话框上创建作为活动。使用清单文件将活动更改为对话框,例如

 <activity
        android:name=".Dialog_actvity"
        android:excludeFromRecents="true"
        android:launchMode="singleInstance"
        android:screenOrientation="landscape"
        android:theme="@android:style/Theme.Dialog" >
    </activity>

这样,它可以正确显示对话框,但无法在对话框活动中设置setcancelable(false)。我不知道如何设置。有人知道请帮我解决这个问题。

4

2 回答 2

2

因为它是 aActivity而不是 a Dialog,所以您无权访问setcancelable(false). onBackPressed()您可以通过在活动中覆盖来禁用后退按钮。

@Override
public void onBackPressed() {
}

请记住,如果您在某些情况下忘记完成对话活动,这并不危险,而且它对用户并不友好。

于 2013-05-29T07:46:21.697 回答
0

除了 FabiF 的回答.. 如果在 Activity 外部单击时该 Activity 也不应该自动关闭,请使用:

@Override
public boolean onTouchEvent(MotionEvent event) 
{
    return true;
}

这不会妨碍例如您的按钮接收点击事件。

于 2014-04-20T15:29:33.257 回答