我正在尝试以编程方式创建视图,并根据其点击状态更改其背景。
我知道我可以用xml drawables做到这一点,但我也想学习编程。
但是,如果我按下我的视图,然后滑动我的手指,视图就会处于按下状态。 (白= 0xaaffffff背景)
我的代码是:
我解决了这个问题。这是工作代码:
mainContainer.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
int action = event.getAction();
if (action==MotionEvent.ACTION_DOWN)
{
v.setBackgroundColor(0xaaffffff);
return false;
}
if(action==MotionEvent.ACTION_MOVE)
{
}
if(action==MotionEvent.ACTION_CANCEL)
{
v.setBackgroundColor(0x00ffffff);
}
if (action==MotionEvent.ACTION_UP)
{
v.setBackgroundColor(0x00ffffff);
return true;
}
return false;
}
});
如您所见,我尝试在我希望再次调用onTouch()
的任何地方返回true。但显然这里有一些我不明白的东西。
我做错了什么?
感谢您的帮助。
答案 0 :(得分:0)
如果在你的ACTION_UP中返回true呢?
if (action==MotionEvent.ACTION_UP)
{
v.setBackgroundColor(0x00ffffff);
return true;
}