2010-12-02 37 views
0

J'ai un code similaire à celui ci-dessous, en peignant sur les mapfields ce mIcon plusieurs fois. Comment puis-je ajouter un écouteur de clic à ce bitmap? J'utilise bb 5,0BlackBerry Bitmap listener

public Bitmap mIcon; 
mIcon = Bitmap.getBitmapResource("pcture1.png"); 

protected void paint(Graphics g) { 


super.paint(g); 
     mDest = new XYRect(....); 
     g.drawBitmap(mDest, mIcon, 0, 0); 
} 

Répondre

2

Remplacer BitmapField et modifier les méthodes isFocusable(), navigationClick (KeyChar),() et() trackwheelClick.

public class ImageButtonField extends BitmapField 
{ 

    public ImageButtonField(Bitmap image) 
    { 
     super(image); 
    } 

    public boolean isFocusable() 
    { 
     return true; 
    } 

    protected boolean navigationClick(int status, int time) 
    { 
    fieldChangeNotify(0); 
    return true; 
    } 

    protected boolean trackwheelClick(int status, int time) 
    { 
    fieldChangeNotify(0); 
    return true; 
    } 

    protected boolean keyChar(char character, int status, int time) 
    { 
     if(Characters.ENTER == character || Characters.SPACE == character) 
     { 
     fieldChangeNotify(0); 
     return true; 
     } 
     return super.keyChar(character, status, time); 
    } 

} 
+0

Bonjour, Merci pour votre réponse. Comment puis-je l'ajouter à un MapField? Les icônes doivent-elles être ajoutées dynamiquement en fonction du centre de la carte associé à l'écran? – user528097

+0

Bonjour Jonathan, comment dessiner un champ bitmap en utilisant Graphics? Le clic de navigation est-il également applicable à l'événement de tap? – sarabogdan