我正在创建一个Android小部件。我的小部件有一个视图,点击后会打开一个看起来像Activity
的{{1}}。
我更新了Dialog
来设置此活动的样式,就像对话框一样。
AndroidManifest.xml
这太棒了。
现在我从这个Widget打开应用程序,然后单击主页按钮(应用程序现在在后台),然后单击对话框显示的wdget - 但应用程序的其余部分显示在对话框后面。
喜欢这里:
我不希望在对话框活动下面看到上一个活动 - 我该怎么做?
答案 0 :(得分:5)
当你从启动器启动Widget_OeffneDialog活动时,Android只是恢复当前在后台的实例 - 以及它包含的任何backstack和历史记录。
尝试强制您的小部件改为启动活动的新实例。
Intent intent = new Intent(this, A.class);
intent.setFlag(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
答案 1 :(得分:0)
使用Theme.Translucent。半透明主题不会使背景中的应用程序/视图变暗。 请注意,半透明主题不使用动画,因此您可能希望更改它。这是来自Android源代码的主题XML:
<style name="Theme.Translucent">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
<!-- Note that we use the base animation style here (that is no
animations) because we really have no idea how this kind of
activity will be used. -->
<item name="android:windowAnimationStyle">@android:style/Animation</item>
</style>