android listview页脚宽度更改为匹配父本身

时间:2013-07-04 10:35:40

标签: android android-layout android-listview

我有纵向和横向模式的活动。

活动包含listview。这个listview有一个页脚,我在程序上添加了这样的:

View footer = LayoutInflater.from(this).inflate(R.layout.footer_button,
                null);
        footer.setPadding(0, 0, 0, 0);
lv_details.addFooterView(footer);

并且页脚footer_button.xml的布局为:

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

<Button android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/b_ok"
        android:text="@string/b_ok"
        android:textColor="#FFFFFF"
        android:background="@drawable/bg_selector"/>
</LinearLayout>

与肖像模式完美配合。  页脚(确定按钮)正确时的图像 enter image description here

现在当我进入横向模式时,我遇到了问题。 这是页脚成为什么 enter image description here

我进入Hierachy观察者,我想我发现了错误,请看这张照片 enter image description here 如您所见,宽度为Match parent而不是fill parent,即使我在布局中使用了fill parent

请问解决方案是什么?

有人要求

后的代码
adapter = new AdapterFoodProfile(this, aList);
        View header = LayoutInflater.from(this).inflate(
                R.layout.customer_profile_header, null);
        tv_edit = (TextView) header
                .findViewById(R.id.tv_customer_profile_header_edit);
        tv_edit.setOnClickListener(this);
        lv_details.addHeaderView(header);
        View footer = LayoutInflater.from(this).inflate(R.layout.footer_button,
                null);
        footer.setPadding(0, 0, 0, 0);
        b_ok = (Button) footer.findViewById(R.id.b_ok);
        b_ok.setOnClickListener(this);
        lv_details.addFooterView(footer);
        lv_details.setAdapter(adapter);

2 个答案:

答案 0 :(得分:2)

如果这样可以解决问题,甚至可以解决问题,那么ListView已设置为android:layout_width="fill_parent"。如果出现另一个问题,它将间接与此相关。

答案 1 :(得分:0)

请设置按钮宽度fill_parent。