2016-04-01 7 views
0

私はonTouchEventメソッドを使用して、ドロップイベントとクリックイベントのドラッグ&を持つことができます。私は私のネクサス7(2012)の結果をテストし、それは本当に素晴らしい作業が、私のsmarphoneのAsus Zenfone上だ、それはないと私はなぜ見ることができない、ここに私のコードは次のとおりです。OnTouchEventがAsus Zenfoneでクリックを検出しない

button.setOnTouchListener(new View.OnTouchListener() { 
    private float startX, startY; 
    private long startClickTime; 

    @Override 
    public boolean onTouch(final View v, MotionEvent event) { 
     switch (event.getAction()) { 
      case MotionEvent.ACTION_DOWN: 
       startX = event.getX(); 
       startY = event.getY(); 
       startClickTime = Calendar.getInstance().getTimeInMillis(); 
       break; 

      case MotionEvent.ACTION_MOVE: 
       if (v instanceof Button) { 
        Button button = ((Button) v); 
        if (button.getText().length() == 0) return true; 

        ClipData clipData = ClipData.newPlainText("", ""); 
        DragShadowBuilder shadowBuilder = new DragShadowBuilder(v, false, scale); 
        v.startDrag(clipData, shadowBuilder, v, 0); 

        DataHolder.getInstance().setCurrentText(button.getText().toString()); 
        button.setText(""); 
       } 
       return true; 

      case MotionEvent.ACTION_UP: 
       float endX = event.getX(); 
       float endY = event.getY(); 
       long clickDuration = Calendar.getInstance().getTimeInMillis() - startClickTime; 

       if (isAClick(startX, endX, startY, endY) && clickDuration < CLICK_DURATION) { 
        v.performClick(); 
       } 
       return true; 
     } 
     return false; 
    } 
}); 

誰かが理由を見ました私のクリックは誘発されない?

編集:スクリーンショット

enter image description here

答えて

0

を解決する方法ですまだあなたの携帯電話に何が起こるかについては一切の責任を負いません。クリックが検出されたらアクションムーブに追加しました。もしそうでなければドラッグを開始します。それでおしまい。

0

は、これが私の提案です - あなたは、オンとオフを設定することができ、レイアウトの境界を表示するオプションがありますお使いの携帯電話の設定に行く - あなたがクリックされている場所を確認することができますこのオプションがオンの場合。

私は、これは私はいつも、私はようやく私のコードが動作するために成功し、それらの問題

+0

提案していただきありがとうございますが、私はすでにそのオプションを知っています。境界は素晴らしいです。私が言ったように、私はちょうど私のスマートフォンに問題があることを知っていることは間違いないと私はなぜエミュレーターと私のネクサスで働いているので、私は理由を理解することはできません... – zed13

+0

タッチ可能な領域をカバーしています – 2D3D

+0

私はスクリーンショットで私の質問を編集しましたが、何もありません... – zed13

関連する問題