Проблемы с listview addFooterView

У меня есть контент, который должен отображаться выше моего списка и ниже, настолько, что scrollview был бы полезен, если бы вы могли использовать scrollviews и listviews вместе. Поскольку это не лучшее решение, я пытался сделать пару вещей, чтобы добавить контент нижнего колонтитула в свой список,

здесь ниже показано, что происходит, когда я добавляю другой тип строки в качестве последней строки. Я не могу получить свой контент, чтобы заполнить ширину строки

alt text

У меня есть пара кнопок, которые нужно зайти в нижний колонтитул. Я использую настраиваемый адаптер, который расширяет BaseAdapter.

Я также попытался использовать addFooterView, но я запутался в том, как использовать метод addFooterView, если вы реализуете свой собственный адаптер. У любого есть простые примеры того, как реализовать addFooterView на пользовательском адаптере

или

есть способ, которым я могу получить строку в этой позиции (как показано на рисунке), чтобы отобразить лучше, вот код, который я использую для создания этой строки нижнего колонтитула

        View v = getLayoutInflater().inflate(R.layout.item_listview_footer, null);
        LinearLayout ll = (LinearLayout) v.findViewById(R.id.ll);
        return ll;  // return ll as convertView in getView function

изменить:

вот xml для макета нижнего колонтитула

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width="fill_parent" android:background="@drawable/red" android:orientation="vertical" android:id="@+id/ll">
    <Button android:id="@+id/specialInsButton" style="@style/button" android:text="Add Special Instructions" android:layout_width="fill_parent"/>
    <Button android:id="@+id/addToBagButton" style="@style/button" android:text="Add To Bag"/>
    <EditText android:id="@+id/quantity" style="@style/standard" android:text="1"/>
</LinearLayout>

вот xml для стиля/кнопки

<style name="button">
        <item name="android:layout_height">wrap_content</item>
        <item name="android:layout_width">fill_parent</item>
        <item name="android:textSize">17px</item>
        <item name="android:textStyle">bold</item>
        <item name="android:typeface">sans</item>
        <item name="android:gravity">center</item>
        <item name="android:layout_gravity">center</item>

    </style>

стандартный стиль

 <style name="standard">
        <item name="android:layout_height">wrap_content</item>
        <item name="android:layout_width">wrap_content</item>
    </style>

Ответы

Ответ 1

Вы можете использовать addFooterView с пользовательским адаптером. Просто не забудьте сделать вызов addFooterView перед вызовом listview.setAdapter().

View v = getLayoutInflater().inflate(R.layout.item_listview_footer, null);
listView.addFooterView(v);
listView.setAdapter(adapter);