Фиксированный и всегда видимый нижний колонтитул ниже ListFragment

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

В настоящее время я делаю это так:

@Override public void onActivityCreated(Bundle savedInstanceState) {

    // ...

    adapter = new MyAdapter(getActivity(), R.layout.list, dataList);

    ListView list = getListView();
    View footer = ((LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(R.layout.footer_add, null, false);

    list.addFooterView(footer);
    setListAdapter(adapter);
}

Пока этот код создает представление в нижней части списка, он действительно не делает то, что я хочу:

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

Во-вторых, мне нужен нижний колонтитул, даже если список ПУСТОЙ. В этом решении нижний колонтитул не отображается, когда список пуст.

Каков наилучший способ получить фиксированный нижний колонтитул (в моем случае, кнопку), который всегда появляется под списком или списком?

Спасибо!

Ответ 1

Вы можете сделать это в макете xml:

<RelativeLayout>

    <Button android:id="@+id/footer" android:layout_alignParentBottom="true"/> 
    <ListView android:id="@android:id/list" android:layout_above="@id/footer"> <!-- the list -->

</RelativeLayout>

Этот макет будет использоваться в методе onCreateView фрагмента.