2011-10-26 14 views
7

sto gonfiando interfaccia da XML utilizzandoOttenere il layout di visualizzazione

View add_phone = getLayoutInflater().inflate(R.layout.phone_info, null); 

Ora come posso accedere RelativeLayout dalla vista add_phone? c'è qualche methos come getChildCount()?

+0

Per favore, aggiungi il tuo layout (phone_info.xml) per poterti aiutare :) –

+0

non ho capito cosa stai dicendo. –

+0

Aggiungi il tuo layout per essere in grado di dirti esattamente come accedervi. –

risposta

6

sì, getChildCount(), funziona su un ViewGroup come LinearLayout, RelativeLayout ecc ..

ViewGroup add_phone = (ViewGroup) getLayoutInflater().inflate(R.layout.phone_info, null); 
int childCount = add_phone.getChildCount(); 

è necessario assicurarsi che il layout gonfiata ha viewGroup come vista primaria, altrimenti si otterrà un'eccezione di classe cast. viewGroup può essere qualcosa di simile LinearLayout, RelativeLayout ecc ..

+0

posso usare lo stesso metodo su oggetto add_phone? –

+0

solo se è un ViewGroup o una sottoclasse di ViewGroup. –

4

Potete trovare viste figlio di una vista attraverso

View.findViewById(int id) 

Nel tuo caso, che si traduce in

RelativeLayout child = (RelativeLayout)add_phone.findViewById(R.layout.phone_info) 

Finché si dispone ID univoci per gli elementi figlio in add_phone, questo dovrebbe restituire l'elemento corretto.

Problemi correlati