如何为片段制作页脚

时间:2014-10-07 08:17:49

标签: android android-fragments

我已经成功地为我的片段做了一个页脚但是在我们看到结束之前它没有显示出来。我想从一开始就想要一个固定的页脚,而不仅仅是片段末尾(listView):

这就是我这样做的方式:

View v =  inflater.inflate(R.layout.fragment_homes, container, false);
View footer = inflater.inflate(R.layout.footer_home, null);
listView = (ListView) v.findViewById(R.id.homeList);
listView.addFooterView(footer);

我知道这些方法适用于listView,但我不知道如何为片段执行此操作。 这些是Facebook Android应用程序的示例:http://www.insidefacebook.com/wp-content/uploads/2014/04/Screenshot_2014-04-07-13-44-48.png

PS:请参见图片底部

我的FooterFragment:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#000"
    tools:context="com.example.user.unchained.FooterHome">


    <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="What's New ?"
    android:textSize="16dip"
    android:layout_marginTop="12dip"
    android:layout_marginLeft="10dip"
    android:drawableLeft="@drawable/status"
    android:id="@+id/watsN"
    android:textColor="@color/connexion_button"
    android:layout_gravity="left|top" />


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text=" | "
        android:textSize="25dip"
        android:layout_marginTop="6dip"
        android:layout_marginLeft="145dip"
        android:textColor="@color/connexion_button"
        android:layout_gravity="left|top" />


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Check In"
        android:textSize="16dip"
        android:layout_marginTop="12dip"
        android:layout_marginLeft="165dip"
        android:drawableLeft="@drawable/checkin"
        android:id="@+id/checkIn"
        android:textColor="@color/connexion_button"
        android:layout_gravity="left|top" />


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text=" | "
        android:textSize="25dip"
        android:layout_marginTop="6dip"
        android:layout_marginLeft="265dip"
        android:textColor="@color/connexion_button"
        android:layout_gravity="left|top" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text=" Picture"
        android:textSize="16dip"
        android:layout_marginTop="12dip"
        android:layout_marginLeft="290dip"
        android:drawableLeft="@drawable/camera"
        android:id="@+id/postPic"
        android:textColor="@color/connexion_button"
        android:layout_gravity="left|top" />

</FrameLayout>

1 个答案:

答案 0 :(得分:0)

将页脚放在列表视图的前面,alignParentBottom设置为true,不要忘记在listView中添加一些paddingBottom。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@null"
    >

  <ListView
      android:id="@+id/my_list"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:clipToPadding="false" 
      android:paddingBottom="@dimen/footer_height"/> <!-- Set the padding -->


  <Button
      android:id="@+id/btn_footer"
      android:layout_width="match_parent"
      android:layout_height="@dimen/footer_height"
      android:text="@string/btn_footer_string"
      android:layout_alignParentBottom="true"/> <!-- Set to align bottom -->

</RelativeLayout>