有一對夫婦的事情,你缺失。
首先,我認爲你誤解了畫布(位圖b)的構造函數。傳入的位圖中有一個畫布會將劃分爲。這可能只是您構建的一個新的位圖。
其次,建議您在視圖的onDraw方法中使用傳遞給您的畫布。據推測,該視圖是您的Activity中的一個,可以通過findViewById從您的XML佈局獲取,也可以構造並傳遞給Activity的onCreate()方法中的setContentView。
因此,您將不得不繼承View並重寫onDraw方法來完成繪圖。喜歡的東西:
public class MyView extends View {
@Override
public void onDraw (Canvas c) {
Bitmap mB = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable.picture);
c.drawBitmap(mB, 0, 0, null);
}
}
然後,在你的活動,你需要創建新的視圖中的實例,並通過它的setContentView傳遞到活動:
public class MyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mv = new MyView(this);
setContentView(mv);
}
可以代替調用setContentView (View v,ViewGroup.LayoutParameters lp)過載如果你想設置LayoutParameters。
我還沒有測試過這些,但至少應該讓你走上正確的道路。
soryy,我是新的android.I不想使用ImageView,因爲在處理圖像後,我無法使用ImageView進行繪製。我想手動繪製它。你能解釋更多嗎? – lakk 2011-03-22 14:24:25
但我必須使用位圖? – lakk 2011-03-22 14:39:48