簡體   English   中英

我想在DoubleClick事件中顯示一些文本怎么辦? 我已經附上我的源代碼

[英]I want to display some text onDoubleClick event how to do so ? i have attached my sourcecode Along

我想在一個文本字段上應用doubleClick事件,該文本字段在double事件上顯示一些文本,但是它一直給我帶來錯誤,是否有任何方法可以簡單地做到這一點

TextView tv;
@SuppressLint("ClickableViewAccessibility")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    tv = (TextView) findViewById(R.id.mytext);
    tv.setOnTouchListener(new OnDoubleTapListener() {
                              @Override
                              public boolean onSingleTapConfirmed(MotionEvent e) {
                                  return true;
                              }

                              @Override
                              public boolean onDoubleTap(MotionEvent e) {
                                  tv.setText("DoubleTouch");
                                  return true;
                              }

                              @Override
                              public boolean onDoubleTapEvent(MotionEvent e) {
                                  tv.setText("Double Touch ");
                                  return true;
                              }
                          }

    );
}

您應該像這樣初始化手勢探測器

  GestureDetector gd = new GestureDetector(this, new GestureDetector.OnGestureListener() {
        @Override
        public boolean onDown(MotionEvent motionEvent) {
            return false;
        }

        @Override
        public void onShowPress(MotionEvent motionEvent) {

        }

        @Override
        public boolean onSingleTapUp(MotionEvent motionEvent) {
            return false;
        }

        @Override
        public boolean onScroll(MotionEvent motionEvent, MotionEvent motionEvent1, float v, float v1) {
            return false;
        }

        @Override
        public void onLongPress(MotionEvent motionEvent) {

        }

        @Override
        public boolean onFling(MotionEvent motionEvent, MotionEvent motionEvent1, float v, float v1) {
            return false;
        }
    });

然后像這樣設置雙擊偵聽器

  gd.setOnDoubleTapListener(new GestureDetector.OnDoubleTapListener() {
        @Override
        public boolean onSingleTapConfirmed(MotionEvent motionEvent) {
            return false;
        }

        @Override
        public boolean onDoubleTap(MotionEvent motionEvent) {
            return false;
        }

        @Override
        public boolean onDoubleTapEvent(MotionEvent motionEvent) {
            return false;
        }
    });

最后,像這樣將偵聽器應用於視圖

  tv.setOnTouchListener(new View.OnTouchListener() {

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        // TODO Auto-generated method stub
        gd.onTouchEvent(event);
        return false;
    }
});


有關更多信息,請參考Android文檔檢測常見手勢

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM