2011-03-06 5 views
1

J'ai une classe de navigation personnalisée où il y a des vues communes donc je pensais les mettre dans une disposition qui doit être gonflée par la classe personnalisée et sur la mise en page principale mal mettre un peu de navigation élément à ce sujet.Custom LinearLayout avec gonfler xml et le noeud enfant

Actuellement quand je Prolonge LinearLayout, les vues du xml remplace toutes les vues dans la vue gonflé (je mets ce code sur constructeur)

((Activity) context).getLayoutInflater().inflate(R.layout.navigation_group, this ,true);

est-il un moyen où je pourrais gonfler une mise en page et obtenir l'enfant de l'implémentation XML et le mettre sur une vue? comme

mise en page doit être gonflé

<com.mycompany.NavigationGroup> 
    <Text android:text="title" ... /> 
    <Button android:text="collapse" ... /> 
    <LinearLayout android:id="@+id/navigationItemHolder ... /> 
    <Text android:text="descriptions" ... /> 
</com.mycompany.NavigationGroup>

utilisé dans la mise en page principale

 
<com.mycompany.NavigationGroup> 
    <Button android:text="menu 1" /> 
    <Button android:text="menu 2" /> 
</com.mycompany.NavigationGroup>

Ma question est de savoir comment pourrais-je mettre le menu de menu 1 & 2 à l'intérieur navigationItemHolder? Merci

+0

Cela n'a aucun sens de faire ce que vous demandez. Je reformulerais votre question pour discuter du type de mise en page que vous souhaitez réaliser et quelqu'un peut vous aider à déterminer comment procéder. – user432209

+0

bonne question, mais il aurait pu être mieux formulé. – Shade

Répondre

1

Vous pouvez le faire par programme après avoir déplié votre mise en page. Je crois que vous pouvez faire quelque chose comme ceci:

YourLayout layout = (YourLayout)((Activity) context).getLayoutInflater().inflate(R.layout.navigation_group, this ,true); 
layout.((LinearLayout)getChildAt (3)).addView (yourNavigationGroup);