2012-05-03 31 views
0

画上的按钮矩形我有一个RelativeLayout的内部3个LinerLayouts,每个LinerLayouts包含9个按键。 现在我想要在按钮上方画矩形框,每当我触摸按钮时,矩形框应该向每个按钮滑动(移动)手指如何移动。任何想法如何做到这一点..在此先感谢。如何使用帆布

回答

0
protected void onDraw(Canvas canvas) { 
    super.onDraw(canvas); 

    canvas.drawRect(mRect, new Paint()); 
} 

private Rect mRect = new Rect(); 

private static final int WIDTH = 100; 
private static final int HEIGHT = 100; 

private void setRectPosition(int x, int y) { 
    mRect.set(x, y, WIDTH, HEIGHT); 
    invalidate(); 
} 

@Override 
public boolean onTouchEvent(MotionEvent event) { 
    float x = event.getX(); 
    float y = event.getY(); 
    setRectPosition((int)x, (int)y); 
    return super.onTouchEvent(event); 
} 

我认为这是可以工作。

+0

感谢您的答复昌潍姚明,但如果我触摸一个按钮(不点击)继续移动手指到下一个按钮框也应该相应地移动,通过使用onClicklistener()我不能做到这一点,我想要的东西像onTouchEvent()。在onTouchEvent中,我们可以使用我们可以绘制的任何y坐标值。但在这里我们怎么能? – VKJ

+0

你应该设置自己的宽度和高度。在您的RelativeLayout或LinearLayout实现此方案 –

+0

所有按钮和班轮布局是在一个相对布局和xml我膨胀,所以我怎么可以在这种情况下绘制矩形。 – VKJ