2010-10-05 11 views

Antwort

21

Meine bevorzugte Art und Weise die Inflation zu handhaben:

//First get our inflater ready, you'll need the application/activity context for this 
LayoutInflater mInflater; 
mInflater = LayoutInflater.from(mContext); 

//Inflate the view from xml 
View newView = mInflater.inflate(R.layout.my_new_layout, null); 

//Then you'll want to add it to an existing layout object 
mMainLayout.add(newView); 

//Or perhaps just set it as the main view (though this method can also 
// inflate the XML for you if you give it the resource id directly) 
setContentView(newView); 

Grundsätzlich verwenden Sie es bestehende XML-Layouts zur Laufzeit aufzublasen. Normalerweise gehen Sie weiter und fügen diese neuen Ansichten in zuvor definierte ViewGroups oder List-Objekte ein.

+0

+1 Bestnote für eine große präzise Antwort, dank –

+0

@ Marloke großer Hilfe Mann –

6

Nicht ganz sicher, was du meinst, aber wenn ihr verbundenen mit Aufpumpen Ansichten, seine verwendet, um das Layout XML-Dateien in die Anwendung zu laden. z.B. durch

View myWelcome = View.inflate(this, R.layout.welcome, null); 

Seine leichte und bewährte Verfahren zu berücksichtigen haben Sie Definition innerhalb Layout XML-Dateien zu sehen, anstatt Ihre Ansichten voll von Code zu schaffen.

2

Layout Inflator verwendet, um ein Java-Objekt Ihrer kompletten Layout zurückzukehren

nehme an, Sie ein Layout XML-Datei haben, in dem das Wurzelelement relativ Layout ist und es enthält eine Imageview und Textview dann Layout Inflator verwenden, können Sie zurückkehren ein View-Objekt, das sich auf das gesamte Layout bezieht.

Grundsätzlich ist dieser in der Listenansicht und Rasteransicht in sie ein Layoutobjekt der einreihigen oder Element, das wiederholt werden soll, verstopfen verwendet wird.

0

Sie forderten für den Einsatz von Inflator .. im Grunde, wenn Sie zwei XML-Dateien in einer Java-Klasse verwenden möchten, Inflator verwendet wird und dessen Code ist einfach die unten gegeben wird ..

TextView text; 
    View layout; 
     LayoutInflater inflator=getLayoutInflater(); 
     layout =inflator.inflate(R.layout.new_xml_that you want to use in that java class,null); 

     text=(TextView)layout.findViewById(R.id.text); 
     text.setText("progressing"); 

hier verwende ich Textview, dann ist dies in nächster xml mit id = Text thats it .. wenn Sie diese würdig dann bitte wie diese finden .. dank