除了我的主要活动之外,我还需要我所有剩余的活动都不是全尺寸的。因此,在每个onCreate
上运行以下代码段:
final Display display = getWindowManager().getDefaultDisplay();
final Point size = new Point();
display.getSize(size);
final WindowManager.LayoutParams params = getWindow().getAttributes();
params.height = (int) (size.y * 0.6);
params.width = (int) (size.x * 0.9);
这是正常的,活动窗口调整大小并在屏幕中居中,所以现在我将此活动放在顶部,主要活动(在第二天开始)在后台 - 但即使这个活动的尺寸较小,其余未使用屏幕布局完全不透明。
我的目标是让第二个窗口的未使用空间透明,或至少模糊,我知道这是用setAlpha
属性制作的,但是我无法弄清楚如何将它设置为未使用的我的第二次活动的布局。
视觉上,我的意思是这种效果:
怎么做?这甚至可能吗?
谢谢!
答案 0 :(得分:2)
如果您将Dialog
样式应用于Activity
,则应该以更少的麻烦来获得您正在寻找的效果。
答案 1 :(得分:1)
将以下主题应用于manifest.xml文件中的第二个Activity:
<style name="TransparentTheme" parent="android:Theme.Light">
<item name="android:windowIsTranslucent">true</item>
<item name="android:backgroundDimEnabled">true</item>
</style>
的AndroidManifest.xml:
<application>
<activity
android:name="second Activity"
android:theme="@style/TransparentTheme" >
</activity>
</application>
答案 2 :(得分:0)
您可以使用android:Theme.Dialog
样式进行活动。
在 manifest.xml 文件中更改它:
<activity android:theme="@android:style/Theme.Dialog">
在活动文件中以编程方式或:
setTheme(R.style.Theme_Large);