禁用对话框和主要活动之间的淡入淡出

时间:2012-04-07 14:39:47

标签: android dialog

我在它的清单中创建了一个使用'android:theme =“@ android:style / Theme.Dialog”'的小应用程序。这样,它将像对话框一样显示,因此背景将是半透明和暗淡的。 在活动的生命周期中,将显示另一个对话框。然而,在关闭对话框之后,背景会淡入淡出一段时间,然后再次淡出以匹配应用程序的主题。

我可以使用

禁用此行为
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);

但使用此选项会导致对话框不会使活动变暗。

有没有办法达到预期的行为?

-Activity's background should be translucent and dimmed
-Dialog should dimm the activity's layout
-No fading when dialog is dismissed

完整代码:

public class DialogDimActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

    public void onClick(View v) {
        Dialog d = new AlertDialog.Builder(this)
        .setNegativeButton("Close", null)
        .create();
    //  d.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
        d.show();
    }
}

0 个答案:

没有答案