0

When the statement convertView = mInflater.inflate(R.layout.listitem_course, null); execute in the following overridden method of BaseAdapter the app stops. I dont know why.

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    Log.i(StudyManagerDataSource.LOG_TAG,
            "CourseListAdapter -> getView called!");
    if (convertView == null) {
        Log.i(StudyManagerDataSource.LOG_TAG,
                "CourseListAdapter -> Convet view is null called 1!");
        convertView = mInflater.inflate(R.layout.listitem_course, null);

        mViewHolder = new ViewHolder();

        mViewHolder.courseNameTextView = (TextView) convertView
                .findViewById(R.id.courseNameTextView);

        convertView.setTag(mViewHolder);

    } else {
        mViewHolder = (ViewHolder) convertView.getTag();
    }

    Course mCourse = mCourses.get(position);

    mViewHolder.courseNameTextView.setText(mCourse.getCourseName());

    Log.i(StudyManagerDataSource.LOG_TAG,
            "CourseListAdapter -> getView executed!");

    return convertView;
}

The code for listitem_course is as follows:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >

<TextView
    android:id="@+id/courseNameTextView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textSize="20sp" />
</LinearLayout>
4

1 に答える 1

0

あなたはあなたのアイテムを膨らませるためにこれを使うべきです:

mInflater.inflate(R.layout.listitem_course, parent, false);

編集:

これparentは、インフレートされたビューが挿入されるViewGroupであり、この場合は、getView()メソッドの親引数です。

于 2013-02-18T18:01:01.027 に答える