首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android事件处理

Android事件处理
EN

Stack Overflow用户
提问于 2014-06-14 10:45:54
回答 1查看 51关注 0票数 1

我有将1添加到一些编辑文本的图像,我已经编写了代码来处理该图像的onclick事件,并且它运行良好。但我必须实现的是,如果用户按下图像,它应该增加edittext,如果他保持图像处于按下状态,它应该增加更多值的edittext,这取决于他按下图像的时间。

EN

回答 1

Stack Overflow用户

发布于 2014-06-14 11:21:01

您可以使用一个处理程序,该处理程序在图像被按下时在连续循环中执行runnable。runnable将包含增量代码:

代码语言:javascript
复制
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 */
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24216154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档