2015-06-14 3 views
0

Итак, чтобы создать фрагмент, содержащий один ListView, я должен сделатьПочему ListView не может быть вид сверху?

<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="match_parent" 
       android:paddingLeft="@dimen/activity_horizontal_margin" 
       android:paddingRight="@dimen/activity_horizontal_margin" 
       android:paddingTop="@dimen/activity_vertical_margin" 
       android:paddingBottom="@dimen/activity_vertical_margin" 
       tools:context=".MainActivityFragment"> 

    <ListView 
     android:id="@+id/listview" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"/> 

</FrameLayout> 

Почему я должен поместить ListView внутри FrameLayout? Почему ListView не может быть просмотром верхнего уровня?

UPDATE

Я вроде задал вопрос неправильно: я имел в виду: Почему это не лучшая практика, чтобы сделать сам вид сверху уровень ListView? Я всегда вижу оболочку FrameLayout в онлайн-кодах.

+0

«Я всегда вижу оболочку FrameLayout в онлайн-кодах» - не стесняйтесь ссылаться на некоторых. Или, как выразились Wikipedians: цитата, пожалуйста. Обратите внимание, что 'ListFragment' не нуждается в файле макета, если вы просто управляете одним« ListView ». – CommonsWare

+0

один быстрый пример из «уважаемого» репо: https://github.com/udacity/Sunshine-Version-2/blob/sunshine_master/app/src/main/res/layout/fragment_main.xml –

+0

Рамка в этом XML служит нецелесообразным, если они программно не добавляют другие представления, которые перекрывают представление списка (например, кнопка с плавающим действием). – cyroxis

ответ

3

Это может быть, если вы не ожидаете положить что-либо еще в макет.

FrameLayout, то же, что и линейный и относительный, являются контейнерами для нескольких видов, но если у вас есть только один, который вам не нужен.

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

+0

Привет. Вы ответили до того, как опубликовали мое обновление (состояние гонки), извините. См. Мое обновление. –

+0

Обновлено с короткой догадкой. –

Смежные вопросы