我想在ImageView
中给一些坡度。有可能吗?如果是的话那么如何?如何在Android中将坡度设置为ImageView
下面的图像显示正是我想要做的。我在ImageView
中突出显示了斜率。
感谢任何形式的帮助
我想在ImageView
中给一些坡度。有可能吗?如果是的话那么如何?如何在Android中将坡度设置为ImageView
下面的图像显示正是我想要做的。我在ImageView
中突出显示了斜率。
感谢任何形式的帮助
您尝试实现的方法可以通过几种方法完成。
第一种方法 - 使用叠加图像
这可能是最直接的方法来实现这一点。创建一个位图,或者一个基本上是一个带有所需背景颜色的三角形的绘图(在你的例子中为深红色),然后将它提供给一个放在原来的ImageView
上的ImageView
,对齐底部。这个新的ImageView
将基本上阻止你的原始ImageView
的底部,给你想要的效果。
第二种方法 - 使用图像掩模
此方法是稍微更复杂,但是将去除需要具有在布局中的附加ImageView
。基本上,这意味着在将其设置在ImageView
之前,您需要稍微处理位图,并且需要一个额外的位图来定义生成的图像的形状。该位图将成为图像的“蒙版”。请参阅Click here以查看有关如何执行此操作的示例。
试试这个,用API> 11
mImageView.setRotation(angle);
与API> = 11
您还可以设置从XML
android:rotation="90"
机器人:旋转=“90”只是旋转ImageView的。不再。 –
您可以扩展的ImageView并重写的onDraw方法是这样的:
Paint paint=new Paint();
paint.setColor(Color.BLACK);
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Path p=new Path();
//start from bottom left corner
p.moveTo(0,canvas.getHeight());
//move to the offset
p.lineTo(canvas.getWidth(),YOUR_OFFSET);
//move to bottom right corner
p.lineTo(canvas.getWidth(),canvas.getHeight());
//return to bottom left corner
p.lineTo(0,canvas.getHeight());
//clsoe the path
p.close();
canvas.drawPath(p,paint);
}
,若您要使用一些颜色漆区域。
否则,您可以定义截取区域,并使用canvas.clipPath(Path path)方法
谢谢你的回答。它工作正常!但有一句话是我们需要创建蒙版图像。我们不能使用普通图像作为蒙版图像。 –
你可以从下面的链接掩盖你的形象:http://www166.lunapic.com/editor/?action=mask –