Ich habe einen Button & ein Bitmap wie geschaffen ..Umgang mit ButtonField & BitmapField Klicken Sie auf (Touch) Ereignisse in Blackberry Storm?
public class MyCanvas extends MainScreen implements FieldChangeListener
{
HorizontalFieldManager hfm;
private Bitmap startBitmap;
private BitmapField startBitmapField;
private ButtonField okButton;
MyCanvas()
{
hfm = new HorizontalFIeldManager();
startBitmap = Bitmap.getBitmapResource("start.png");
startBitmapField = new BitmapField(startBitmap);
startBitmapField.setChangeListener(this);
hfm.add(startBitmapField);
okButton = new ButtonField("Ok", ButtonField.CONSUME_CLICK | ButtonField.NEVER_DIRTY);
okButton.setChangeListener(this);
hfm.add(okButton);
}
public void fieldChanged(Field field, int context)
{
if(field == startBitmapField)
{
System.out.println("Touched START...");
}
else if(field == okButton)
{
System.out.println("Touched Ok...");
}
}
}
Aber die Button oder Bitmap Klick in Blackberry 4.7 Simulator ist nicht passiert.
Ich möchte es für Blackberry Storm bauen, so verwende ich Blackberry 4.7
Wie Veranstaltungen für Button & Bitmap für Blackberry Storm zu handhaben klicken/berühren?
Ich bin die Button & BitmapFields als
okButtonField = new ButtonField("Ok", BitmapField.HIGHLIGHT_SELECT | BitmapField.FOCUSABLE);
startBitmapField = new BitmapField(startBitmap, BitmapField.HIGHLIGHT_SELECT | BitmapField.FOCUSABLE);
Die Erstellung mit Arbeits ..
protected boolean touchEvent(TouchEvent event)
{
switch(event.getEvent() )
{
case TouchEvent.DOWN: ........
return true;
case TouchEvent.MOVE: .......
return true;
case TouchEvent.UP: ........
return true;
case TouchEvent.CLICK:
if(deleteButton.isFocus())
{
System.out.println("Touched DEL ..........");
}
else if(okButton.isFocus())
{
System.out.println("Touched OK ..........");
}
else if(startBitmapField.isFocus())
{
System.out.println("Touched START ..........");
}
return true;
}
return false;
}
aber jedes Mal die gleiche Taste aufgerufen wird, der Brennpunkt ist.
Bedeutet, wenn "Ok" Knopf hat Fokus dann obwohl du auf "Löschen" Knopf klickst "Ok" Knopf wird genannt.
So, wie Sie den Fokus auf Button Click ändern? bedeutet, auf welches ButtonField oder BitmapField geklickt wird, sollte der Fokus erhalten?
Gibt es eine Methode zum Überprüfen von "button.isClicked() wie button.isFocus()"?
ja. Ich habe hfm zum Bildschirm hinzugefügt. Eigentlich gibt es 2 Knöpfe. So, wie man mit seinen Click-Events umgeht. Nun übergebe ich button.setChangeListener (this) und überschreibe die fieldChanged() -Methode wie oben meinen Code. Aber keine Wirkung. So, wie man Berührungsereignisse für 2 Knöpfe behandelt? Ich werde versuchen, Ihren Code für BitmapFields. – Shreyas
Shreyas, Ich habe Code mit einem weiteren Knopf aktualisiert, es funktioniert immer noch ... Vielleicht kommt es auf etwas anderes an? Überprüfen Sie es, und wenn es immer noch nicht funktioniert, können Sie Ihren vollständigen Code veröffentlichen, damit wir es herausfinden werden. –
können Sie ButtonFields & BitmapFields auf Simulator 4.7.0.41 berühren? – Shreyas