Blackberry: Comment puis-je faire un acte ButtonField comme le bouton à bascule?
-
02-10-2019 - |
Question
J'ai un seul bouton que je veux utiliser comme bouton Start / Stop. Comment puis-je faire le travail ButtonField comme bouton à bascule?
S'il vous plaît aide.
La solution
Juste étiquette de bouton de changement sur fieldChange ou navigationClick ou TouchEvent, ne pas oublier de sauvegarder bascule dans l'état membre de la classe:
class ToggleButtonField extends ButtonField {
int mToggleState = -1;
String[] mLabels = {};
public ToggleButtonField(String[] labels) {
super(CONSUME_CLICK);
if(labels != null && labels.length > 0)
{
mLabels = labels;
mToggleState = 0;
updateLabel();
}
}
private void updateLabel() {
setLabel(mLabels[mToggleState]);
}
protected void fieldChangeNotify(int context) {
mToggleState = getNextToggleState(mToggleState);
updateLabel();
super.fieldChangeNotify(context);
}
private int getNextToggleState(int state) {
int result = mToggleState+1;
if(result >= mLabels.length)
result = 0;
return result;
}
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow