2010-03-27 10 views
7

quando tocco in qualunque parte dello schermo quel punto sarà illuminato (niente ma come un lampo o scintillante) per un po 'di tempo. come farlo? qualche esempio o idea ?? Devo implementare per mettere i pulsanti su di esso. esattamente quando tocco lo schermo si illuminerà un po 'di tempo e poi il pulsante apparirà sul punto in cui ho toccato.splendore quando si tocca lo schermo in Android?

risposta

11

Stai andando a dover creare una vista personalizzata e ignorare onuchevent e disegnare. Ecco un esempio molto semplice. è possibile fare riferimento a una vista personalizzata in un layout xml se si utilizza il nome del pacchetto i.e. com.test.CustomView.

public class CustomView extends ImageView{ 
    public CustomView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
    } 
    public CustomView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 
    public CustomView(Context context) { 
     super(context); 
    } 
    boolean drawGlow = false; 
    //this is the pixel coordinates of the screen 
    float glowX = 0; 
    float glowY = 0; 
    //this is the radius of the circle we are drawing 
    float radius = 20; 
    //this is the paint object which specifies the color and alpha level 
    //of the circle we draw 
    Paint paint = new Paint(); 
    { 
     paint.setAntiAlias(true); 
     paint.setColor(Color.WHITE); 
     paint.setAlpha(50); 
    }; 

    @Override 
    public void draw(Canvas canvas){ 
     super.draw(canvas); 
     if(drawGlow) 
      canvas.drawCircle(glowX, glowY, radius, paint); 
    } 
    @Override 
    public boolean onTouchEvent(MotionEvent event){ 
     if(event.getAction() == MotionEvent.ACTION_DOWN){ 
      drawGlow = true; 
     }else if(event.getAction() == MotionEvent.ACTION_UP) 
      drawGlow = false; 

     glowX = event.getX(); 
     glowY = event.getY(); 
     this.invalidate(); 
     return true; 
    } 
} 
+0

Cosa succede se ho un ViewPager al di sotto, che ha bisogno di onTouchEvent? – Machado