我制作了一个完全透明的布局的样式/主题。现在我想模糊背景。我建立的大多数解决方案是针对两个 Views.So 第二个布局模糊了第一个布局。但这不是我想要的。我只想模糊可见的背景(例如安卓午餐菜单或主屏幕等)。
我的风格:
<style name="Theme.Transparent" parent="@android:style/Theme.Dialog">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
我在清单中的应用程序上使用了它。有人有想法吗?
编辑:
现在我想截取屏幕截图,以便之后可以模糊图像.这应该可以很好地筛选android午餐,主屏幕。.我使用了这段代码,它抛出了一个空对象
public Bitmap screenshot_menu()
{
RelativeLayout r1;
r1 = (RelativeLayout)findViewById(R.id.relativeLayout_MAIN);
View v1 = r1.getRootView();
v1.setDrawingCacheEnabled(true);
Bitmap bm = v1.getDrawingCache();
return bm;
}
是因为我的主题吗?或者这里可能有什么问题?
我不知道
它是否符合您的需求,但您也可以使用 FrameLayout 并在其他组件顶部设置半透明图像,这样如果您使其可见,整个布局似乎在其下方模糊:
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/some_semi_tansparentimage"
>
<ImageView>
<OtherElements1>
<OtherElements2>
<OtherElements3>
<FrameLayout>
只需更改 ImageView 的可见性即可添加 ro 去除模糊性