2010-01-15 4 views
0

Je souhaite qu'un BasicEditField se comporte exactement comme un champ d'étiquette. La raison pour laquelle je veux ceci est que je ne peux pas utiliser un champ d'étiquette dans mon cas comme dans le cas de 9500 la méthode onFocus ne fonctionne pas pour une raison quelconque. Mais il le fait en cas de champ d'édition de base. J'ai donc besoin de créer mon propre champ d'étiquettes.Blackberry - BasicEditField avec comportement LabelField

Répondre

1

Dans la conception de l'interface utilisateur, le concept de "Focus" est le lieu vers lequel l'entrée de l'utilisateur est dirigée. Les étiquettes et autres éléments d'interface passifs n'acceptent pas l'entrée de l'utilisateur, de sorte que le concept d'une étiquette acceptant le focus n'a pas de sens. Ayant simulé un active interface element become visible when focus is directed and an adjacent element, et invisible lorsque le même élément adjacent perd le focus n'a pas de sens. Pour que l'élément apparaissant et disparaissant reçoive une entrée, il doit d'abord recevoir le focus. Cela implique que l'élément adjacent doit d'abord perdre le focus, ce qui rend l'élément d'entrée cible invisible. Habituellement, les éléments invisibles ne peuvent recevoir ni focus ni entrée.

Si vous êtes déterminé à fournir cette interaction de l'utilisateur, je suggère ceci:

étendez une classe Manager, afficher une étiquette à l'intérieur. Lorsque le gestionnaire ou l'un de ses enfants reçoit le focus, ajoutez vos boutons. Lorsque tous les enfants du Manager n'ont plus le focus, enlevez vos boutons.

Questions connexes