我已經刪除了舊的代碼,因爲它沒有按照我的意圖工作。我試圖在屏幕的某個部分使用onDraw畫布功能,這樣我的繪圖周圍仍然可以有按鈕和其他文字。Android:定義onDraw畫布大小
***編輯* **
我已經成功,現在解決這個問題。很多建議是有幫助的,但我無法讓它與我想要的一起工作。這可能比我的錯更重要,所以感謝所有提供建議的人。以下是我解決問題的方法。
* 1。首先在佈局文件中定義一個視圖。
<view
class="com.project.MainActivity.Drawing"
android:id="@+id/drawing_area"
android:layout_width="700dp"
android:layout_height="900dp"
android:layout_centerInParent="true"/>
* 2。然後用下面的代碼創建一個單獨的java類文件:
public class Drawing extends View {
Paint paint = new Paint();
public Drawing(Context context) {
super(context);
}
public Drawing(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//Draw Image Here//
}
* 3。然後從主要活動調用繪圖:
public class MainActivity extends Activity {
private Drawing mDrawingArea;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.percentage_count_layout);
mDrawingArea = (Drawing)findViewById(R.id.drawing_area);
}
將圖像尺寸讀取一次並將其存儲在Rect中,而不是每次onDraw調用時都是一個好主意。 – PrplRugby
的確如此,那會更好。 – Raigex
感謝您關注此事。你有這樣一個例子,你可以告訴我嗎?如果我刪除了setContentView,那麼沒有圖像會加載,所以我不確定如何定義大小並在沒有包含這行代碼的情況下顯示它。作爲例子的幾行代碼將非常有幫助。 – AndrewLugs