我有将1添加到一些编辑文本的图像,我已经编写了代码来处理该图像的onclick事件,并且它运行良好。但我必须实现的是,如果用户按下图像,它应该增加edittext,如果他保持图像处于按下状态,它应该增加更多值的edittext,这取决于他按下图像的时间。
发布于 2014-06-14 11:21:01
您可以使用一个处理程序,该处理程序在图像被按下时在连续循环中执行runnable。runnable将包含增量代码:
private int _startIncrementRate = 750;
private int _incrementRate = 50;
private Handler _handler;
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
_handler = new Handler();
_img.setOnTouchListener(new View.OnTouchListener()
{
public boolean onTouch(View view, MotionEvent motionEvent)
{
switch (motionEvent.getAction())
{
case MotionEvent.ACTION_DOWN:
IncrementEditText();
_handler.postDelayed(handler_run, _startIncrementRate);
break;
case MotionEvent.ACTION_UP:
_handler.removeCallbacks(handler_run); // stop runnable from executing
break;
}
return false;
}
});
}
private Runnable handler_run = new Runnable()
{
public void run()
{
IncrementEditText();
_handler.postDelayed(this, _incrementRate);
}
};
private void IncrementEditText()
{
/* increment editText code here */
}https://stackoverflow.com/questions/24216154
复制相似问题