页脚膨胀不适用于横向Android

时间:2014-04-21 00:22:08

标签: android android-layout footer layout-inflater landscape-portrait

我的页脚问题有点尴尬。 我有一个自定义的页面加载项目列表。当您到达最后一个项目时,它会检索更多项目(如果可用),即在(等待时)页脚膨胀时说“正在下载”。当然,它会在下载项目后删除。 问题是,我正在给页脚充气的方式只能在potrait模式下正常工作。使用横向时,页脚不会出现。

编辑:问题是在活动时已经改变模式(landscape,potrait)。如果我从一开始就在风景中开始,那也是有效的。

这是我用来给页脚充气的代码:

lv = (ListView) findViewById(R.id.shops_list);
footerView = getLayoutInflater().inflate(R.layout.footer_downloading, null, false);
lv.addFooterView(footerView);

这是布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ListActivity"
android:background="@color/background" >

    <ProgressBar android:indeterminate="true"
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content"
            android:id="@+id/progress_list" 
            style="?android:attr/progressBarStyle"
            android:layout_centerHorizontal="true"
            android:layout_centerVertical="true"
            android:indeterminateBehavior="cycle" />

    <LinearLayout 
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:visibility="gone"
    android:id="@+id/generic_shops_list"
    android:background="@color/background" >

       <ListView
        android:id="@+id/shops_list"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:divider="@color/pallette_blue"
        android:dividerHeight="1dp" />

    </LinearLayout>

</RelativeLayout>

这是页脚:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="15dip" >

    <TextView
        android:id="@+id/message_downloading_more"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:fontFamily="sans-serif-light"
        android:text="@string/downloading_more"
        android:textSize="22sp"
        android:textStyle="bold"
        android:clickable="false"
        android:layout_centerInParent="true" />

    <ProgressBar android:indeterminate="true"
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content"
            android:id="@+id/progress_downloading" 
            style="?android:attr/progressBarStyle"
            android:indeterminateBehavior="cycle"
            android:layout_centerVertical="true"
            android:layout_toLeftOf="@id/message_downloading_more"
            android:layout_marginLeft="15dip" />


</RelativeLayout>

以下是完整的课程,以供更多参考:Class

1 个答案:

答案 0 :(得分:0)

在扩充视图时,您应始终指定父布局。

footerView = getLayoutInflater().inflate(R.layout.footer_downloading, lv, false);