我在android中有一个透明的布局,在布局后面有一个图像。如何使线性模糊?我发现了使图像本身模糊的例子,但我不想让整个图像变成蓝色,只是将图像放在线性布局的后面。
答案 0 :(得分:1)
将半透明模糊图像设置为线性布局或最简单地将颜色设置为线性布局,并通过定义alpha将其设置为半透明
已编辑的解决方案
这样做......
1。)创建背景图像的模糊副本。 2.)使用
剪辑图像Bitmap croppedBmp = Bitmap.createBitmap(originalBmp, startX, startY, widthLayout , heightOfLayout);
3.。)使用高度和宽度属性为fill-parent的图像视图在线性布局中设置此图像。
答案 1 :(得分:0)
我有非常复杂的解决方案,因此不会有任何代码。所以,这是一步一步的想法:
LinearLayout
。没有ImageView
作为背景。LinearLayout
背景,因此它会首先绘制完整的图像,然后从顶部的同一图像中绘制模糊的正方形。可以使用填充将LinearLayout
的内容移动到所需位置。MyLinearLayout
的内容并将其放到您的布局资源中。提供所需的构造函数。onAttachedToWindow()
和onDetachedFromWindow()
方法。在它们内部,我们应该加载我们的背景Bitmap
并相应地回收它。我们将其命名为mBackground
draw()
方法。在其中我们将首先绘制我们的mBackground
。Canvas#clipRect()
方法将Canvas
的绘图区域裁剪为某个指定的矩形。在您的情况下,此矩形应该是您的内容下方的区域。您可以使用View#getPadding*()
方法找出它。不要忘记在裁剪绘图区域之前调用canvas#save()
。Bitmap
- 因为之前我们曾调用过clipRect
,它只会在这个区域内绘制。在绘制背景后不要忘记致电canvas#restore()
。super.draw()
以获取您的LinearLayout
包含的其他内容。