我有),我在其中包含了許多的ImageView,RelativeLayout的的一個XML文件,定義了一個佈局等如何OnDraw的
在OnCreate中(我有以下代碼
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
以我倍率爲視圖,我有以下代碼
class MainView extends View
{
.
@Override
protected void onDraw(android.graphics.Canvas canvas)
{
.
.
canvas.drawBitmap(Bitmap, x, y, null);
}
x和y被計算以與我ImageViews之一(我已驗證它們是correc重合t和位圖是有效的),我的問題是位圖總是繪製在ImageView後面。這是它被掩蓋了。有沒有辦法強制位圖在ImageView前面繪製?
一個很好的問題,我用SetImageDrawable試過前面的帆布()但它是非常昂貴的,所以我試圖通過在OnDraw()中繪製圖像的快捷方式,但是我認爲我已經回答了我自己的問題,OnDraw中的畫布是背景將根據documentat離子。這可以解釋爲什麼位圖被遮擋,但不能很好地解決我的問題 對於加速更改ImaveView的src有什麼建議嗎? – user330844 2010-07-13 14:23:13
刪除圖像視圖,如果你不需要它。如果它仍然很慢,也許你想看看使用GLSurfaceView,在那裏你可以使用OpenGL來繪製你的圖像作爲紋理。我對它的經驗很少,但速度更快 – 2010-07-13 14:34:27