/ / Pourquoi ListView ne peut-il pas être une vue de haut niveau? - android, android-layout, listview

Pourquoi ListView ne peut-il pas être vu au plus haut niveau? - Android, android-layout, listview

Donc, pour créer un fragment qui contient une seule liste, je dois faire

<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>

Pourquoi dois-je placer le ListView dans un FrameLayout? Pourquoi "le ListView ne peut-il pas être la vue de niveau supérieur?"

METTRE À JOUR

J'ai en quelque sorte posé la question mal: ce que je voulais dire est la suivante: pourquoi ne pas faire de la ListView elle-même la vue de niveau supérieur? Je vois toujours l'encapsuleur FrameLayout dans les codes en ligne.

Réponses:

3 pour la réponse № 1

Cela ne peut pas, tant que vous ne vous attendez pas à mettre autre chose dans la mise en page.

FrameLayout, identique à Linear et Relative, sont des conteneurs pour plusieurs vues, mais si vous n’en avez qu’une, vous n’avez pas besoin de ces vues.

La plupart des fichiers de mise en page vus en ligne supposent que vous souhaitiez développer votre interface utilisateur en ajoutant des éléments de base tels qu'un état ou une fab vide. Votre état vide doit également se trouver sur la même présentation.