我想在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 –