我的代码是
namespace classlibrary
{
public class numerictext : EditText
{
//My code
}
当我尝试继承类库中的编辑文本控件时,出现错误:父级不包含带有0个参数的构造函数。我理解的问题是Parent没有带有0参数的构造函数。但是如何继承类库中的控件?
答案 0 :(得分:1)
对于任何基于Android的View子类,您需要提供调用其基础对象构造函数的三个构造函数,即:
public class MyView : EditText
{
public MyView(Context context) : base(context) { }
public MyView(Context context, IAttributeSet attrs) : base(context, attrs) { }
public MyView(Context context, IAttributeSet attrs, int defStyle) : base(context, attrs, defStyle) { }
// your override code....
}
答案 1 :(得分:0)
您需要在派生类中调用基本构造函数之一。假设您使用的是Android EditText
小部件:
public class numerictext : EditText
{
public numerictext(Context context) : base(context)
//^^^^^^^^^^^^^^^
//Note how we are now calling the base constructure
{
//empty or you can add your own code
}
public numerictext(Context context, IAttributeSet attrs) : base(context, attrs)
{
}
//etc
}
答案 2 :(得分:-3)
您是否考虑过将EditText更改为:
public class EditTtext
{
data stuff..
EditText() {}
other functions
}
尽管我不明白您的为什么不按原样工作