我有一个使用 Android ActionBar 并具有三个选项卡的应用程序。我正在使用片段容器来切换不同的 ListFragments,但对于其中一个选项卡,我还想要布局底部的按钮和几个保存列表中数据摘要的 TextView。我在应用程序的其他地方将其作为 FragmentActivity 和 ListFragment 实现。
我想知道是否有任何方法可以为一个选项卡定义布局?
谢谢
我有一个使用 Android ActionBar 并具有三个选项卡的应用程序。我正在使用片段容器来切换不同的 ListFragments,但对于其中一个选项卡,我还想要布局底部的按钮和几个保存列表中数据摘要的 TextView。我在应用程序的其他地方将其作为 FragmentActivity 和 ListFragment 实现。
我想知道是否有任何方法可以为一个选项卡定义布局?
谢谢
复制您正在膨胀 ListFragment 的布局 xml,然后将额外的视图放在列表元素旁边。您可以onTabSelected(Tab tab, FragmentTransaction ft)
在 FragmentActivity 中使用来跟踪是否选择了您的特殊情况选项卡,然后将包内的标志推送到实例化您的片段类的内容,然后指示它需要在onCreateView()
.
假设你可能有这个布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ListView
android:id="@+id/@android:id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</ListView>
</LinearLayout>
在此处的 ListView 下方添加 TextViews 或 Button 是可行的(在这个确切的示例中,它们会被推离屏幕底部)。根据您如何进行包含 ListView 的布局,您可以在列表滚动时将新项目永久保存在屏幕底部(RelativeLayout 包含所有内容,线性布局包含文本/按钮,并android:layout_above="@+id/idOfThatLinearLayout"
作为 ListView 的属性添加) . 或者,您可以使用 addFooterView() 执行与此类似的操作,以使这些新项目与列表一起滚动,就好像它们是底部的最后一个项目一样。