Domanda

Sono nuovo di sviluppo di Android e continuano a venire attraverso riferimenti a gonfiaggio vista da un file di layout xml. Ho cercato su google e cercato la guida di sviluppo, ma ancora non sono riuscito a prendere un senso per ciò che significa. Se qualcuno potrebbe fornire un esempio molto semplice, che sarebbe molto apprezzato.

È stato utile?

Soluzione

Quando si scrive un file XML di layout, sarà gonfiati da parte del sistema operativo Android che in pratica significa che sarà reso con la creazione di vista degli oggetti in memoria. la chiamata di Let che l'inflazione implicita (il sistema operativo si gonfia la vista per voi). Per esempio:

class Name extends Activity{
    public void onCreate(){
         // the OS will inflate the your_layout.xml
         // file and use it for this activity
         setContentView(R.layout.your_layout);
    }
}

Si può anche gonfiare vista in modo esplicito utilizzando la LayoutInflater. In tal caso è necessario:

  1. Ottenere un'istanza del LayoutInflater
  2. Specifica l'XML per gonfiare
  3. Utilizza il View tornato

Per esempio:

LayoutInflater inflater = LayoutInflater.from(YourActivity.this); // 1
View theInflatedView = inflater.inflate(R.layout.your_layout, null); // 2 and 3

Altri suggerimenti

"gonfiaggio" un mezzo vista prendere il layout e XML parsing per creare la vista e viewgroup oggetti dagli elementi e gli attributi specificati all'interno, e poi aggiungendo la gerarchia di quei punti di vista e viewgroups verso controllante ViewGroup. Quando si chiama setContentView (), che attribuisce i punti di vista che crea dalla lettura del XML per l'attività. È inoltre possibile utilizzare LayoutInflater per aggiungere una vista ad un altro ViewGroup, che può essere uno strumento utile in molte circostanze.

Gonfiaggio è il processo di aggiunta di una vista (XML) per attività sul runtime. Quando creiamo un listView ci gonfiare la sua ogni elemento dinamico. Se vogliamo creare un ViewGroup con più viste come pulsanti e TextView. Siamo in grado di crearlo come

Button but = new Button();
but.setText ="button text";
but.background ...
but.leftDrawable.. and so on...

TextView txt = new TextView();
txt.setText ="button text";
txt.background ... and so on...

Quindi dobbiamo creare un layout in cui possiamo aggiungere sopra vista

RelativeLayout rel = new RelativeLayout();

rel.addView(but);

E ora, se vogliamo aggiungere pulsante destro del angolo e TextView sul fondo. Dobbiamo fare un sacco di lavoro. Prima con le proprietà della vista e in secondo luogo dobbiamo applicare più vincoli. Si tratta di un lavoro duro e consumo di tempo.

Android rendono facile per noi creare un semplice .xml e progettare il suo stile e gli attributi in XML e semplicemente gonfiare ovunque ne abbiamo bisogno, senza la confusione di impostare vincoli e impostandola programatically.

LayoutInflater inflater = 
              (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View menuLayout = inflater.inflate(R.layout.your_menu_layout, mainLayout, true);
//now add menuLayout to wherever you want to add like

(RelativeLayout)findViewById(R.id.relative).addView(menuLayout);

Credo che qui "gonfiare una vista" significa che vanno a prendere il file layout.xml disegnando una vista specificata nel file xml e popolando (= gonfiaggio) l'viewGroup genitore con il creato vista.

Perché facciamo interfaccia utente in XML, ma visualizzare gli oggetti è quello che noi display in modo che in qualche modo necessario convertire XML in vista oggetti di mezzi in modo da gonfiare siamo la conversione di XML in vista oggetti in modo che possa essere visualizzato, per questo abbiamo bisogno di un servizio chiamato servizio di gonfiaggio layout e dare un xml e sarà convertito per voi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top