2012-11-19 11 views
7

Qualcuno può dirmi come evitare le presse al di fuori del cerchio di un pulsante rotondo poiché "wrap_content" non sembra funzionare. Ho usato un file immagine per creare il pulsante. Apprezzo qualsiasi aiuto. Grazie.Android: come evitare le pressioni al di fuori del cerchio di un pulsante rotondo utilizzando il contenuto dell'involucro?

+0

forse le risposte collegate possono aiutare: (1) http://stackoverflow.com/questions/10266595/how-to-make-a-round-button (2) http://stackoverflow.com/questions/9049868/round-button-in-android-avoid-presses-outside-the-button – rosco

+1

Con un 'bottone' predefinito non è possibile poiché la vista sarà un rettangolo/quadrato. Se crei la tua classe 'Button', puoi determinare se l'utente ha toccato il' Pulsante' al di fuori della cerchia e ignora tale evento. Ci sono alcune domande riguardanti la situazione esatta, lo stackoverflow della ricerca. – Luksprog

risposta

4

Solo per la vostra comprensione .. (Di default Android View è in forma di rettangolo in modo da applicare stesso per Button)

  1. Impostare tocco Listener al pulsante e in onTouch() mappa XY coordinate per Area del cerchio Se si trova nell'area interna, fare ciò che si desidera altrimenti restituire false.

  2. Usa Inset un'occhiata a questo tutorial http://www.anotherandroidblog.com/2011/07/01/button-hit-area-for-custom-graphics/

  3. Implementare TouchDelegates un'occhiata a questo tutorial http://www.vogella.com/blog/2012/04/15/android-using-touchdelegates/

Problemi correlati