创建自定义视图时,我注意到许多人似乎是这样的:
public MyView(Context context) {
super(context);
// this constructor used when programmatically creating view
doAdditionalConstructorWork();
}
public MyView(Context context, AttributeSet attrs) {
super(context, attrs);
// this constructor used when creating view through XML
doAdditionalConstructorWork();
}
private void doAdditionalConstructorWork() {
// init variables etc.
}
我的第一个问题是,构造函数MyView(Context context, AttributeSet attrs, int defStyle)
呢?我不确定在哪里使用它,但是我在超类中看到了它。我需要它吗?在哪里使用?