public class CanvasView extends View { Paint paint; public CanvasView(Context context, AttributeSet attrs) { super(context); paint = new Paint(); …… } @Override protected void onDraw(Canvas canvas) { …… } } 然后我在它所在的activity的布局文件里这么写的: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <com.zero.client.CanvasView android:id="@+id/CanvasView" android:layout_width="match_parent" android:layout_height="match_parent"/> </RelativeLayout> 然后在activity里面,为了把它实例化,写的是: CanvasView canvasView; canvasView = (CanvasView)findViewById(R.id.CanvasView); 但是这样之后canvasView仍然是null,请问我应该怎么写才是对的? 谢谢~~ |
|
不写在xml中呢,直接用代码生成
|
|
那个activity里面不止有一个自定义view,还要放别的东西…… 难道都必须动态生成么…… |
|
40分 |
首先需要导入这个XML文件:
layout = (RelativeLayout) getLayoutInflater().inflate(R.layout.lId) |
非常感谢~ |
|
楼主我遇到了同样的问题,能请教一下吗?
|
|
LZ分享下,,遇到了类似情况
|