我写了一个简单的扩展视图类,代码如下:

public class MyView extends View
 {

   public MyView(Context context)
    {
        super(context);
    }

     public MyView(Context context, AttributeSet attrs) {
         super(context, attrs);
         // TODO Auto-generated constructor stub
     }

    protected void OnDraw(Canvas canvas)
     {
         super.onDraw(canvas);
     }
 }

XML:
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent" >


       <com.main.sufaceview.MyView
            android:id="@+id/myview"
            android:layout_width="300dp"
            android:layout_height="300dp"
            android:background="@drawable/tt"/>

</RelativeLayout>


进入虚拟机时。它显示了细分:


为什么会这样呢?我认为自定义视图应该非常容易。我没有添加其他代码,它有错误。
编辑:logcat显示:

最佳答案

我认为您至少需要另一个构造函数,这就是我在其他帖子中所读的内容。

public MyView(Context context, AttributeSet attrs, int defStyle) {
  super(context, attrs, defStyle);
}

关于android - android自定义 View 在虚拟机中有错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13358532/

10-09 01:35