【发布时间】:2012-04-03 12:45:27
【问题描述】:
我有一个应用程序,我想在其中显示一个列表视图,该列表视图显示在具有多个选项卡的 tabhost 中 问题是 我用来绑定列表视图的代码在我不使用 tabhost 时工作正常,但在这里不起作用
我的代码是
<TabHost
android:id="@+id/tabhost"
android:layout_width="600sp"
android:layout_height="wrap_content"
android:layout_span="3" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="600sp"
android:layout_height="fill_parent"
android:gravity="top" >
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="wrap_content"
android:layout_height="300sp"
android:layout_gravity="center_horizontal"
android:paddingTop="40sp"
android:scrollbarAlwaysDrawVerticalTrack="true" >
<LinearLayout
android:id="@+id/Notebook_Tab"
android:layout_width="600sp"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TableLayout
android:id="@+id/DesktopTabListTableLayout"
android:layout_width="600sp"
android:layout_height="wrap_content" >
<TableRow
android:id="@+id/DesktopListTableRow"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ListView
android:id="@+id/DesktopListView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_span="4"
android:clickable="true"
android:isScrollContainer="true"
android:scrollbarAlwaysDrawVerticalTrack="true"
android:scrollbarSize="10sp"
android:scrollbars="vertical" >
</ListView>
</TableRow>
</TableLayout>
</LinearLayout>
</FrameLayout>
</TabHost>
和代码
public void FillGrid(String s) {
clsDatabase dbh = new clsDatabase(this);
dbh.openDataBase();
Cursor cursor;
cursor = dbh.getGridData(s);
dbh.close();
if (cursor != null) {
int cnt = cursor.getCount();
if (cnt > 0) {
startManagingCursor(cursor);
try {
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
R.layout.desktop_list, cursor, new String[] {
AuditTab.KEY_ROW_ID, AuditTab.KEY_ID,
AuditTab.KEY_SHORT_NAME }, new int[] {
R.id.txt_Desktop_ID, R.id.txt_DesktopID,
R.id.txt_DesktopModel });
adapter.setViewResource(R.layout.desktop_list);
lv.setAdapter(adapter);
lv.setTextFilterEnabled(true);
lv.setFocusable(false);
} catch (Exception ex) {
ex.fillInStackTrace();
}
}
}
}
上面的函数在没有tabhost时运行良好,但现在它不工作了,而且getGridData()方法行也没有问题,但数据没有被适配器绑定,没有任何id相关的问题一切都是应有的样子请帮帮我
【问题讨论】:
标签: android android-layout android-widget android-listview android-tabhost