Android ListView滚动ActionBar

时间:2013-10-05 21:57:10

标签: android android-listview android-fragments android-support-library

我遇到的问题是我使用HashMap填充ListView,但是当数据出现时,ListView会出现在ActionBar上。如果有所作为,我也在使用Fragments。下面是ActionBar,ListView适配器的代码以及我的问题的屏幕截图。如果您需要更多信息,请告诉我。

ListView代码:

SimpleAdapter adapter = new SimpleAdapter(ForumIndex.getInstance(), categories,android.R.layout.simple_list_item_1, new String[] { "title" }, new int[] { android.R.id.text1 });
setListAdapter(adapter);

ActionBar代码:

ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

ActionBar.Tab tab = actionBar.newTab()
        .setText("Categories")
        .setTabListener(new ActionBarTabListener(this, Categories.class.getName()));
actionBar.addTab(tab);

tab = actionBar.newTab()
        .setText("Most Recent")
        .setTabListener(new ActionBarTabListener(this, MostRecent.class.getName()));
actionBar.addTab(tab);

MostRecent Class Layout:     

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

    <ListView
        android:id="@id/android:list"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

示例图片:

enter image description here

2 个答案:

答案 0 :(得分:2)

我解决了这个问题。问题是我添加片段的方式是使用Android内容而不是使用我自己的布局。

我改变了:

fragmentTransaction.add(android.R.id.content, fragment);

要:

fragmentTransaction.add(R.id.content_frame, fragment);

答案 1 :(得分:0)

您只需为列表视图定义android:paddingTop的填充。