android中 自定义了一个MyView(继承自View类) 在xml布局文件中作为组件添加(无错误提示)但运行后报错

我是刚学按照书上写的一步步来的,下面是截图自定义MyView类xml布局文件MainActivity文件工程目录结构运行时错误提示运行不起来书上结果是显示字符...怎么样... 我是刚学按照书上写的一步步来的,下面是截图
自定义MyView类

xml布局文件

MainActivity文件

工程目录结构

运行时错误提示 运行不起来

书上 结果是显示字符.. . 怎么样才能把自定义的View作为组件显示呢, 可能跟inflater有关吧(自己猜的)
展开
 我来答
woshidaniel
2015-08-24 · TA获得超过9240个赞
知道小有建树答主
回答量:1760
采纳率:96%
帮助的人:955万
展开全部

1、自定义view需要注意构造函数,所有的xml布局,初始化时构造函数使用的都是 (Context context, AttributeSet attrs) {两个参数的。如果没有该构造函数会报错。

2、如果有自定义属性,则需要在当前xml中引入工程包名,否则自定义属性会报错

这个问题报错的愿意是第一个,构造函数使用错误。增加构造函数就能解决问题。

比如:

public class MyView extends View{//下面2个构造函数都加上
  public MyView(Context context){
  }
  public MyView(Context context, AttributeSet attrs) {
     super(context, attrs);
  }
}
百度网友229b6a1
2013-05-14
知道答主
回答量:23
采纳率:0%
帮助的人:15.9万
展开全部
自定义的<com....MyView .../> 又不是根节点
MainActivity中修改为serContentView(new MyView(this));
追问
我需要的是自定义View作为组件在xml布局文件里。。
追答

你在MyVIew中需overide带AttributeSet的构造方法

public MyView(Context context, AttributeSet attrs) {

super(context, attrs);

}


你把最重要的错误信息没截上

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式