Domanda

Come gonfiare la vista sul layout, dove dovrebbero essere visibili tutti i miei elementi dell'interfaccia utente che sono sul layout. Sto provando questa riga ma non funziona, non riesco a vedere la mia immagine di sfondo, il pulsante e altre immagini.

MyView view1= new MyView (this);

LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
 view1= (MyView) inflater.inflate(R.layout.main, null);

Aiutaci .. Grazie in anticipo.

È stato utile?

Soluzione

Per quello che stai facendo, usa

setContentView(R.layout.main);

Il motivo per cui non si ottiene la vista dopo il gonfiaggio è che è necessario aggiungere quella vista da qualche parte nella vista corrente.Attualmente la tua visualizzazione gonfiata è orfana.

Altri suggerimenti

questo di solito funziona ...

LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
 View view1= inflater.inflate(R.layout.main, null);

o

 LayoutInflater inflater = LayoutInflater.from(getApplicationContext);
View view1= inflater.inflate(R.layout.main, null);

e quindi aggiungi questa visualizzazione a contentView.

<”Aggiornato:

Supponendo che tu debba disegnare una linea nel tuo main.xml, lascia che ti dia questo suggerimento.invece di disegnare una linea in fase di runtime estendendo la classe View, crea una View in xml come questa

<View android:layout_width = "fill_parent"
      android:layout_height = "2dp"  //assuming you want line of 2dp thickness
      android:background= "@android:color/black"/> // define your desired color here 

spero che aiuti ..

Finalmente ha funzionato.

getWindow().addContentView(view1,
                new ViewGroup.LayoutParams(
                         ViewGroup.LayoutParams.WRAP_CONTENT,ViewGroup.LayoutParams.WRAP_CONTENT));
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top