2013-04-09 7 views
7

Die Inflate-Methode der LayoutInflater abstract-Klasse hat als zweiter Parameter der Inflate-Methode ViewGroup root. Aus der Dokumentation wird es als eine "optionale Ansicht, die das übergeordnete Element der generierten Hierarchie sein soll" erwähnt.Wie verwenden Sie den zweiten Parameter in der Inflate-Methode der LayoutInflater-Klasse, Android

Kann jemand ein Beispiel geben, wie man diesen Parameter benutzt? Und was würdest du da reinlegen? A ViewGroup kann jede Art von Layout wie LinearLayout sein.

Ich habe nicht ganz verstanden, was mit diesem Parameter zu tun ist. Wenn die Ansicht, die Sie aufblasen, nicht Teil des hier eingegebenen Layouts ist, würde dies zu einem Fehler führen. Versteh den Zweck nicht.

Mehr aus der Dokumentation:

public View inflate (XmlPullParser parser, ViewGroup root)

Added in API level 1 Inflate a new view hierarchy from the specified xml node. Throws InflateException if there is an error.

aus Performance-Gründen wichtig, sehen die Inflation stark auf die Vorverarbeitung von XML-Dateien beruht, die zum Zeitpunkt der Erstellung erfolgt. Daher ist es derzeit nicht möglich, mit einer XmlPullParser über eine einfache XML-Datei zur Laufzeit zu verwenden.

Parameter Parser XML-Dom-Knoten, der die Beschreibung der Ansichtshierarchie enthält.

root Optionale Ansicht als übergeordnetes Element der generierten Hierarchie. Rückgabe Die Stammansicht der überhöhten Hierarchie. Wenn root angegeben wurde, ist dies die Stammansicht. Ansonsten ist es die Wurzel der aufgeblähten XML-Datei.

+0

Ich bin mir ziemlich sicher, dass Sie eine Null übergeben können, da es sich um einen optionalen Parameter handelt. – midhunhk

Antwort

2

Ich bin nicht wirklich sicher, welcher Teil davon verwirrt Sie, um ehrlich zu sein. Sie können eine beliebige ViewGroup übergeben, um das übergeordnete Element der Ansichten zu sein, die Sie dynamisch erstellen.

Zum Beispiel:

private static View mView = inflater.inflate(R.layout.fragment_featured, container, false); 

Dies wird das Layout in der fragment_featured XML-Datei innerhalb des Behälters (als Eltern) enthalten aufzublasen. Der Typ des Containers ViewGroup liegt bei Ihnen.

2

aufblasen Methode gibt die übergeordnete Ansicht des aufgeblasenen xml

  • Falls Sie nicht als root Viewgroup passieren kann, aufgeblasenen xml Wurzel Ansicht wird

  • Im Fall zurückgegeben werden übergeben Sie root ViewGroup, root Ansicht des Stamms ViewGroup wird zurückgegeben