如何在按下(按下)Android视图时执行某些代码

时间:2011-03-25 04:05:59

标签: java android

我正在编写一个小应用程序,我需要运行一些代码,同时用户按住屏幕按钮,ImageView更精确。我尝试过onTouchEvent,但代码只在实际事件中执行(向下,向上或移动)。

我希望在按住按钮的同时执行代码。有关如何做到这一点的任何想法?

<小时/> 这就是我试过的

myImageView.setOnLongClickListener (new OnLongClickListener()
        {
            @Override
            public boolean onLongClick(View view) 
            {
                Log.i("TAG","FOO");
                return true;
            }
        });

我想要的是在我按住按钮/屏幕的同时反复打印FOO。

1 个答案:

答案 0 :(得分:2)

或者你可以这样做:

public class myActivity extends Activity implements OnTouchListener {


private ImageView iv = null;


@Override
public boolean onTouch(View v, MotionEvent event) {

    int a = event.getAction();

    if (v == iv)
    {
        if (a == MotionEvent.ACTION_DOWN)
            handleDown();
        else if (a == MotionEvent.ACTION_UP)
            handleUp();
    }

    return true;
}

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.myLayout);

    iv = (ImageView)findViewById(R.id.iv0);

    // . . . 

}

// . . .