我目前正致力于VS2017上的Xamarin PCL项目。在Android项目下,我创建了一个名为TestBtn的类。代码如下所示。我按照按钮元数据并相应地声明构造函数,如下所示。但是我得到一个错误,Button不包含一个带0参数的构造函数。
知道为什么我会收到这个错误吗?
namespace CustomRibbonRenderer.Droid
{
public class TestBtn: Button
{
public TestBtn(Context context)
{
}
}
}
答案 0 :(得分:1)
Button
代表一个按钮小部件。用户可以按下或点击按钮来执行动作。根据Xamarin文档Button
类接受4个公共构造函数和1个受保护的构造函数:
Button(Context)
Button(Context, IAttributeSet)
Button(Context, IAttributeSet, Int32)
Button(Context, IAttributeSet, Int32, Int32)
错误出现在您的代码中,因为您没有调用base()
。 base
关键字用于构造函数。派生类构造函数需要从其基类调用构造函数。
答案 1 :(得分:0)
你有一个构造函数接受一个参数(context)。如果在没有参数的情况下初始化TestBtn,则可能会出错。