简体   繁体   中英

java null pointer android

I've been struggling for no reason and i don't see why. Here is my java code :

public class SousRubrique extends RelativeLayout {
private View sousRubriqueView;
private TextView titleTextView;
public SousRubrique(Context context, AttributeSet attrs, int defStyle) {
    super(context);
    init(context);
}
public SousRubrique(Context context, AttributeSet attrs) {
    super(context);
    init(context);
}
public SousRubrique(Context context) {
    super(context);
    init(context);
}

// Initialization methods

    public void init(Context context){
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        setSousRubriqueView(inflater.inflate(R.layout.sousrubrique, this));

        bind();
    }
    public void bind(){
        setTitleTextView((TextView) sousRubriqueView.findViewById(R.id.sousRubriqueTitle));
    }
    // end

    public void setTitle(String title){
        titleTextView.setText(title);
    }
    public TextView getTitleTextView() {
        return titleTextView;
    }
    public void setTitleTextView(TextView titleTextView) {
        this.titleTextView = titleTextView;
    }
    public View getSousRubriqueView() {
        return sousRubriqueView;
    }
    public void setSousRubriqueView(View sousRubriqueView) {
        this.sousRubriqueView = sousRubriqueView;
    }
}

Here is my xml :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/red"
android:orientation="vertical" >

<TextView
    android:id="@+id/sousRubriqueTitle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Sous-Rubrique"
    android:layout_centerInParent="true"
    android:textColor="@android:color/white" />

How come Eclipse tells me there is a problem of java null pointer on the bind method ?

the sousRubriqueView object is never initialized. That's why you are getting the NPE

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM