1
我是Android編程的新手,我有一些關於繪圖的基本問題。在活動內繪製多個視圖
我有一個活動,通過.xml文件顯示一個TextView,它看起來像這樣:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="New Text"
android:id="@+id/textView"
android:textSize="18dp"
android:textStyle="bold" />
</RelativeLayout>
我想顯示我的活動裏面幾個矩形。爲此,我創建了一個擴展View的新類。我實例化了這個類,並設法在我的Activity中顯示我的矩形(也許我應該在這裏使用word佈局,我不確定...)。
我創建的類:
public class DrawRectangle extends View {
Paint paint = new Paint();
int x,y;
int length,width;
public DrawRectangle(Context context,int _x,int _y, int _length, int _width){
super(context);
x = _x;
y = _y;
length = _length;
width = _width;
}
@Override
public void onDraw(Canvas canvas) {
paint.setColor(Color.BLACK);
paint.setStrokeWidth(3);
canvas.drawRect(x, y, x+length, y+length, paint);
}
}
而且創造DrawRectangle的類的實例的活動裏面的功能:
public void drawRectangle(){
DrawRectangle rectangle = new DrawRectangle(this,100,100,50,50);
// rectangle.setBackgroundColor(Color.TRANSPARENT);
setContentView(rectangle);
}
事情是這樣的:
- 矩形已被正確繪製
- 我們看不到textview了
我試圖創建DrawRectangle類的另一個實例,只有一個可以看到(最後一個在屏幕上設置)。我認爲這個問題來自這個事實,即這個觀點佔據了所有的位置,並且放在了所有事物的前面。於是,我就背景顏色改變爲透明使用線路:
rectangle.setBackgroundColor(Color.TRANSPARENT);
或
rectangle.setBackgroundColor(Color.parseColor("#00000000");
有沒有任何錯誤,但其他矩形或文本視圖是看不見的。
我該怎麼辦?我懷疑這是一個錯誤的理解。
謝謝你們!
Thx for answering。我怎樣才能知道我的佈局ID?關於findViewByID(R.id.your_layout_id)。 – Xema 2014-10-20 21:21:21
這是佈局xml文件的名稱。 – JoaoBiriba 2014-10-20 21:44:15
我的佈局沒有任何ID,所以這就是爲什麼我有點迷路。現在它工作了!謝謝 ! – Xema 2014-10-21 20:04:41