Antworten:
Sie sind dasselbe (in API Level 8+). Verwenden Sie match_parent
.
FILL_PARENT (in API Level 8 und höher in MATCH_PARENT umbenannt) bedeutet, dass die Ansicht so groß wie die übergeordnete Ansicht sein soll (minus Auffüllen).
...
fill_parent
: Die Ansicht sollte so groß wie die übergeordnete Ansicht sein (minus Auffüllung). Diese Konstante ist ab API-Ebene 8 veraltet und wird durch ersetztmatch_parent
.
http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html
-1
. Wenn du dich besser fühlst, verstehe ich das auch nicht ... :-)
-1
. Sie erhalten den Fehler, weil die ältere Plattform den neuen Namen derselben Konstante nicht kennt.
Google hat den Namen geändert, um Verwirrung zu vermeiden.
Das Problem mit dem alten Namen fill parent
bestand darin, dass er die Dimensionen des übergeordneten Elements beeinflusst, während match parent
das resultierende Verhalten besser beschrieben wird - passen Sie die Dimension an das übergeordnete Element an.
Beide Konstanten werden -1
am Ende aufgelöst und führen so zu einem identischen Verhalten in der App. Ironischerweise scheint diese Namensänderung, die vorgenommen wurde, um die Dinge zu klären, eher Verwirrung zu stiften, als sie zu beseitigen.
Funktionell kein Unterschied, Google hat nur den Namen von fill_parent in match_parent von API Level 8 (Android 2.2) geändert. FILL_PARENT ist aus Kompatibilitätsgründen weiterhin verfügbar.
LayoutParams.FILL_PARENT
und LayoutParams.MATCH_PARENT
beide haben den Wert -1. Ich bin mir nicht sicher, was Google dazu verleitet hat, von Fill Parent zu Match Parent zu wechseln :)
Da die meisten phones are >= Android 2.2
.. Sie sollten Match Parent für zukünftige Kompatibilität verwenden ... nicht sicher, wann sie die ältere Fill Parent-Konstante beenden werden!
Aus Kompatibilitätsgründen ist es besser, sich an fill_parent zu halten, dh wenn Geräte unter API 8 unterstützt werden. Wenn Ihre App jedoch auf API 8 und höher abzielt, sollten Sie stattdessen match_parent verwenden.
FILL_PARENT
es veraltet ist (wie oben von Matt Ball erwähnt), ist die einzige Option für die Vorwärtskompatibilität MATCH_PARENT
.
FILL_PARENT
ist in API-Level 8 veraltet und MATCH_PARENT
verwendet API auf höherer Ebene
match_parent wird anstelle von fill_parent verwendet und legt fest, dass es so weit wie möglich zum übergeordneten Element geht. Verwenden Sie einfach match_parent und vergessen Sie fill_parent . Ich habe fill_parent komplett über Bord geworfen und alles ist wie immer perfekt.
Überprüfen Sie hier für mehr.
Nur um ihm einen Namen zu geben, der seiner tatsächlichen Handlung näher kommt . "fill_parent"
füllt den verbleibenden Platz nicht aus, wie der Name andeutet (dafür verwenden Sie das Attribut weight). Stattdessen nimmt es so viel Platz ein wie sein übergeordnetes Layout. Deshalb lautet der neue Name"match_parent"
Beide haben ähnliche Funktionen. Der einzige Unterschied besteht darin, dass fill_parent bis API-Ebene 8 und match_parent nach API-Ebene 8 oder höher verwendet wird.
Wenn Sie das Layout festlegen width
und height
wie match_parent
in der XML
Eigenschaft festlegen , wird der gesamte Bereich der übergeordneten Ansicht belegt, dh er ist so groß wie die übergeordnete Ansicht.
<LinearLayout
android:layout_width="300dp"
android:layout_height="300dp"
android:background="#f9b0b0">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#b0f9dc"/>
</LinearLayout>
Hasenelternteil ist rot und Kind ist grün. Kind besetzen alle Bereiche. Weil es ist width
und height
ist match_parent
.
Hinweis: Wenn dem übergeordneten Element eine Auffüllung zugewiesen wird, wird dieses Leerzeichen nicht berücksichtigt.
<LinearLayout
android:layout_width="300dp"
android:layout_height="300dp"
android:background="#f9b0b0"
android:paddingTop="20dp"
android:paddingBottom="10dp">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#b0f9dc"/>
</LinearLayout>
TextView-Höhe = 300 dp (übergeordnete Höhe) - (20 (paddingTop) +10 (paddingBottom)) = (300 - 30) dp = 270 dp
fill_parent
ist der vorherige Name von match_parent
Für API Level 8 und höher fill_parent
umbenannt in match_parent
und fill_parent
ist jetzt veraltet.
Also fill_parent
und match_parent
sind gleich.
Die Ansicht sollte so groß wie die übergeordnete Ansicht sein (minus Auffüllung). Diese Konstante ist ab API-Ebene 8 veraltet und wird durch {@code match_parent} ersetzt.
match_parent, was bedeutet, dass die Ansicht so groß wie die übergeordnete Ansicht sein soll (minus Auffüllen).
wrap_content, was bedeutet, dass die Ansicht gerade groß genug sein soll, um ihren Inhalt einzuschließen (plus Auffüllen)
Zur besseren Veranschaulichung habe ich ein Beispiellayout erstellt, das dieses Konzept demonstriert. Um die Wirkung zu sehen, habe ich jedem textView-Inhalt einen Rahmen hinzugefügt.
Im TextView-Inhalt "Übergeordnetes Element abgleichen" können wir sehen, dass die Layoutbreite über die gesamte Länge des übergeordneten Elements verteilt ist.
Aber wir können in "Wrap Content" textView-Inhalt sehen, dass die Layoutbreite in die Länge des Inhalts (Wrap Content) eingewickelt ist.
match_parent
und fill_parent
sind dieselbe Eigenschaft, mit der die Breite oder Höhe einer Ansicht im Vollbildmodus horizontal oder vertikal definiert wird.
Diese Eigenschaften werden in solchen Android-XML-Dateien verwendet.
android:layout_width="match_parent"
android:layout_height="fill_parent"
oder
android:layout_width="fill_parent"
android:layout_height="match_parent"
fill_parent
wurde in früheren Versionen verwendet, aber jetzt ist es veraltet und ersetzt durch match_parent
. Ich hoffe es wird dir helfen.
fill_parent: Die Ansicht sollte so groß sein wie die übergeordnete.
Jetzt ist dieser Inhalt fill_parent veraltet und wird durch match_parent ersetzt.
FILL_PARENT wurde in API Level 8 und höher in MATCH_PARENT umbenannt. Dies bedeutet, dass die Ansicht so groß sein soll wie die übergeordnete Ansicht (ohne Auffüllung) - Google
FILL_PARENT
ist ab API-Level 8 und höher veraltet und wird für die oberen Versionen in umbenannt MATCH_PARENT
Beide sind gleich FILL_PARENT
und MATCH_PARENT
wurden FILL_PARENT
in der niedrigeren Version weniger als API-Stufe 8 verwendet, und MATCH_PATENT werden in höheren API-Stufen größer als 8 verwendet.
FILL_PARENT
( MATCH_PARENT
in API Level 8 und höher umbenannt), was bedeutet, dass die Ansicht so groß sein soll wie ihre übergeordnete Ansicht (minus Auffüllen)
fill_parent
: Die Ansicht sollte so groß wie die übergeordnete Ansicht sein (minus Auffüllung). Diese Konstante ist ab API-Ebene 8 veraltet und wird durch ersetzt match_parent
.
Für weitere Informationen besuchen Sie bitte diese Seite
1. match_parent
Wenn Sie die Breite und Höhe des Layouts als match_parent festlegen, wird der gesamte Bereich der übergeordneten Ansicht belegt, dh er ist so groß wie die übergeordnete Ansicht.
Hinweis : Wenn dem übergeordneten Element eine Auffüllung zugewiesen wird, wird dieses Leerzeichen nicht berücksichtigt.
Wenn wir standardmäßig eine layout.xml erstellen, haben wir RelativeLayout als übergeordnete Standardansicht mit android: layout_width = "match_parent" und android: layout_height = "match_parent", dh es nimmt die gesamte Breite und Höhe des mobilen Bildschirms ein.
Beachten Sie auch, dass die Polsterung an allen Seiten angebracht ist.
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
Fügen Sie nun eine Unteransicht LinearLayout hinzu und legen Sie deren layout_width = "match_parent" und layout_height = "match_parent" fest. In der grafischen Ansicht wird etwa Folgendes angezeigt:
match_parent_example
Code
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.code2care.android.togglebuttonexample.MainActivity" >
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="11dp"
android:background="#FFFFEE"
android:orientation="vertical" >
2. fill_parent:
Dies ist dasselbe wie match_parent, fill_parent wurde in API-Ebene 8 abgeschrieben. Wenn Sie also API-Ebene 8 oder höher verwenden, müssen Sie die Verwendung von fill_parent vermeiden
Befolgen wir die gleichen Schritte wie für match_parent, verwenden Sie stattdessen überall fill_parent.
Sie werden sehen, dass es keinen Unterschied im Verhalten sowohl bei fill_parent als auch bei match parent gibt.