我创建了一个可以与 Android 平台上的另一个应用程序一起使用的应用程序。另一个应用程序根据用户操作传递我的应用程序信息和意图。我希望我能够在另一个应用程序之上弹出一个半透明的信息对话框。我遵循了此处的示例之一,但它使我的应用程序回到了前台,并将对话框置于其之上。这可能吗?我希望避免与其他开发人员一起设置意图侦听器等来显示我的信息。
问问题
1268 次
1 回答
1
如果要在另一个活动之上处理弹出窗口,则必须使用广播侦听器来实现。就半透明属性而言,您可以在实例化新对话框时添加以下行: dialog = new DialogBox(this, R.style.Transparent);
为了实现这一点,您需要在 styles.xml 中编写以下代码,该代码将驻留在项目的 values 文件夹中。
<style name="Transparent">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">
@android:style/Animation.Translucent</item>
<item name="android:windowBackground">@drawable/transparent</item>
<item name="android:windowNoTitle">true</item>
<item name="android:colorForeground">#fff</item>
</style>
同样,您需要在 values 文件夹中的 colors.xml 文件中添加以下行:
<drawable name="transparent">#00000000</drawable>
另外,您可以尝试一下:将模糊添加到背景图像
WindowManager.LayoutParams lp = dialog.getWindow().getAttributes();
lp.dimAmount=0.0f;
dialog.getWindow().setAttributes(lp);
dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
希望这会有所帮助。
谢谢!
于 2013-07-23T13:21:33.307 回答