Android空引用问题的解决方法——on a null object reference
前言:今天写了一个小程序,自定义view组件,但是却怎么也运行不起来,一直空指针引用报错。
: Attempt to invoke virtual method ‘$FontMetrics ()’ on a null object reference
解决方法:
因为自定义View,有三个构造函数:
public SideBar(Context context) {
super(context);
}
public SideBar(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
public SideBar(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(attrs);
}
我们只需把构造函数里的super(…);换成this(…);就可以解决空指针引用的问题。
public SideBar(Context context) {
this(context,null);
}
public SideBar(Context context, @Nullable AttributeSet attrs) {
this(context, attrs,0);
}
public SideBar(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init(attrs);
}