2010-11-10 7 views
1

J'ai une mise en page avec un spinner et beaucoup de zones de texte et de boutons.Puis-je désactiver les boutons/édits de ma mise en page? (visible mais désactivée)

J'ai besoin de faire apparaître certains éléments de la mise en page quand l'une des options du spinner est sélectionnée et de faire disparaître quand une autre est sélectionnée. ----> PROBLEME RESOLU !!!

Mais aussi, j'ai besoin de désactiver certains éléments de la mise en page. Je veux dire qu'ils doivent être visibles, mais l'utilisateur ne peut pas appuyer sur les boutons ou éditer edittext

Répondre

2

Oui, vous pouvez.

En supposant que vous avez une poignée à votre disposition que vous pouvez faire qch comme ceci:

yourLayoutToShow.setVisibility(View.VISIBLE) 

ou

yourLayoutToHide.setVisibility(View.GONE) 

MISE À JOUR:

Pour obtenir une poignée à votre disposition (celui que vous voulez montrer/cacher dynamiquement) vous devez faire comme ceci:

@Override 
protected void onCreate(Bundle savedInstanceState) {   
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.your_activity); 
    LinearLayout viewToShowOrHide = 
     (LinearLayout) findViewById(R.id.view_to_show_or_hide); 
} 
+0

oh merci beaucoup ça marche! mais j'ai une autre question maintenant ... ¿est-il possible de désactiver les boutons et edditboxes? Je veux dire ... pour les avoir visibles mais désactivés. Je veux dire que l'utilisateur ne peut pas appuyer sur les boutons ou écrire textedits – NullPointerException

+0

Essayez d'utiliser 'View.setEnabled (booléen activé)'. L'effet dépend de la sous-classe View réelle. Alors, essayez, mais je pense que cela devrait fonctionner pour les boutons et les cases à cocher comme vous le souhaitez. –

1

Vous pouvez désactiver un contrôle en faisant ...

myControl.setEnabled(false); 
Questions connexes