android – 视图中没有默认构造函数

android – 视图中没有默认构造函数,第1张

概述我有一个使用扩展 android.view.View的类的问题,这很奇怪,因为我在两个不同的项目中做同样的事情,只有其中一个是这个问题. 这两个项目都有一个类,它说:公共类ClassName扩展了View. 但是对于其中一个,这一行用红色加下划线,给出的信息是 “There is no default constructor available in ‘android.view.View’ “ 我 我有一个使用扩展 android.vIEw.VIEw的类的问题,这很奇怪,因为我在两个不同的项目中做同样的事情,只有其中一个是这个问题.

这两个项目都有一个类,它说:公共类Classname扩展了VIEw.

但是对于其中一个,这一行用红色加下划线,给出的信息是

“There is no default constructor available in ‘androID.vIEw.VIEw’ “

我不知道为什么一个人有这个问题而另一个没有.当然,它们不是同一个类,但它们都以相同的方式扩展VIEw.我认为这将是一个常见的问题,但我没有通过谷歌搜索找到任何相关信息,所以我在这里问.感谢您提供任何帮助!

编辑:

这些评论让我再次检查,果然,带有错误的类没有在其类中定义构造函数.我觉得有趣的是,即使我去定义了一个构造函数,它仍然会给出相同的错误,直到我添加参数(Context context,AttributeSet attrs)并在构造函数中添加了一行’super(context,attrs)’.我添加了这些因为它们存在于工人类的构造函数中.所以工作版本是

public DrawingActivity(Context context,AttributeSet attrs) {    super(context,attrs);}

我的新问题是关于这究竟是什么.这是从没有错误的类中获取的,该版本最初是从教程中复制过来的,当时从未考虑过.

解决方法 删除没有参数的构造.

您的视图应该只有3个构造函数:

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

关于这个构造函数,你可以阅读here.我只能提到defStyle:

The default style to apply to this vIEw. If 0,no style will be applIEd (beyond what is included in the theme). This may either be an attribute resource,whose value will be retrIEved from the current theme,or an explicit style resource.

总结

以上是内存溢出为你收集整理的android – 视图中没有默认构造函数全部内容,希望文章能够帮你解决android – 视图中没有默认构造函数所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1130454.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存