我是Android新手,我试图在xml中扩充布局,但是我得到了一个RuntimeException。除了我的活动类和扩展SurfaceView的类之外,我几乎已经删除了所有内容。 谁能告诉我我做错了什么?
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.hj.Panel
android:id="@+id/SurfaceView01"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</FrameLayout>
package com.hj;
import android.app.Activity;
import android.os.Bundle;
public class Rita extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
package com.hj;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.SurfaceView;
class Panel extends SurfaceView {
private Paint mPaint;
public Panel(Context context) {
super(context);
}
@Override
public void onDraw(Canvas canvas) {
mPaint = new Paint();
canvas.drawRect(0, 0, 322, 644, mPaint);
}
}
答案 0 :(得分:1)
为了让您的代码运行,我必须执行以下操作:
1)将“match_parent”更改为“fill_parent”
2)添加构造函数
public Panel(Context context, AttributeSet atts) {
super(context, atts);
}
您可能想尝试
答案 1 :(得分:0)
报告异常时,应始终发布堆栈跟踪。 (在命令行上运行adb logcat,或在eclipse中查看logcat窗口。)
没有它,我最好的猜测是它应该是fill_parent,而不是match_parent。