我正在java.lang.NullPointerException
使用createTabContent
以下代码。有两个标签规范。当我打电话并设置标签时,第一次更改标签就可以了。但是当我在第二个选项卡上再次调用时,它命中了 line 的空指针异常:NoStudentText.setVisibility(View.VISIBLE);
如果学生列表没有数据,我将显示 No Student Text。它显示第一次通话的文字。但是,如果我第二次调用该选项卡,则会收到错误消息。
tspecStudent.setContent(new TabContentFactory() {
public View createTabContent(String arg0) {
if(listStudent != null && listStudent .size() > 0) {
//show the student list
} else {
TextView noStudentText = (TextView)findViewById(R.id.NoStudentText);
noStudentText.setVisibility(View.VISIBLE);
return noStudentText;
}
}
});
我在主布局中包含另一个 xml。
主要的.xml
<TabHost
android:id="@+id/tabhostMain"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1" >
....
<include layout="@layout/tab_student" />
</TabHost>
tab_student.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ListView
android:id="@+id/StudentList"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawSelectorOnTop="false" />
<TextView
android:id="@+id/NoStudentText"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="No Student"
android:visibility="gone" />
</FrameLayout>