这是我尝试创建自定义视图时的代码。我知道它应该定义3个基本构造函数来覆盖。我不明白,如果我添加JSONObject,为什么它会落在声明自定义视图构造函数上。我仍然在super中重写所有需要的构造函数。如果我从所有3个构造函数中删除JSONObject并将其保留为默认形式,则效果很好。
有什么问题吗?
public abstract class _ASListItem extends ConstraintLayout implements IControl, IASListItem
{
private JSONObject jsonObject = new JSONObject();
public void onSetJSONObject(JSONObject jsonObject)
{
this.jsonObject = jsonObject;
}
public JSONObject onGetJSONObject() { return this.jsonObject; }
public _ASListItem(JSONObject jsonObject, Context context)
{
super(context);
this.onSetJSONObject(jsonObject);
}
public _ASListItem(JSONObject jsonObject, Context context, AttributeSet attrs)
{
super(context,attrs);
this.onSetJSONObject(jsonObject);
}
public _ASListItem(JSONObject jsonObject, Context context, AttributeSet attrs, int defStyle)
{
super(context,attrs,defStyle);
this.onSetJSONObject(jsonObject);
}
@Override
protected void onAttachedToWindow()
{
super.onAttachedToWindow();
this.onSetLayoutView(this);
this.onInitInstance(this);
this.onHandleInstance(this);
this.onUpdateInstance(this);
}
}
这是我从Java解释器中得到的错误
java.lang.RuntimeException:无法启动活动ComponentInfo {mobile.application / mobile.application.activity.activityUserInfo}:android.view.InflateException:二进制XML文件行#34:二进制XML文件行#34:错误膨胀class mobile.application.custom.customHeadUserInfo