.java不使用2或3参数的View构造函数; XML属性不起作用

xsx*_*sxy 19 eclipse android

我是新手,我有创建游戏的问题

执行过程

activity_main.xml - > MainActivity.java - > GameLoop.java - > action.xml(错误) - > CustomView.java

Custom view CustomView is not using the 2- or 3-argument View constructors; XML attributes will not work
Run Code Online (Sandbox Code Playgroud)

我不明白......

And*_*rry 56

您需要覆盖CustomView中View的其他2个构造函数:

public CustomView(Context context) {
    super(context);
    init(context);
}

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

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

private void init(Context context) {
    //do stuff that was in your original constructor...
}
Run Code Online (Sandbox Code Playgroud)


Tre*_*vor 10

您还需要实现这些构造函数:

//Constructor that is called when inflating a view from XML.
View(Context context, AttributeSet attrs)

//Perform inflation from XML and apply a class-specific base style.
View(Context context, AttributeSet attrs, int defStyle)
Run Code Online (Sandbox Code Playgroud)