2016-07-28 3 views
0

を表示せずにカーソルを移動し、私はクリックした位置にカーソルを移動しませんのAndroidのEditTextがデフォルトのキーボード

setOnTouchListener(new OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      Selection.setSelection(getText(), length()); 
      return true; 
     } 
    }); 

これを使って、デフォルトのキーボードを非表示にすることができますよ。私はクリックされた位置にカーソルを移動する必要があります。

+0

参照[this](http://stackoverflow.com/a/14185131/5067493) –

答えて

1

これは、EditTextを拡張する別のクラスを作成することによって機能しました。

setOnTouchListener(new View.OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      switch (event.getAction()) { 
       case MotionEvent.ACTION_DOWN: 
        Layout layout = ((EditText) v).getLayout(); 
        float x = event.getX() + getScrollX(); 
        int offset = layout.getOffsetForHorizontal(0, x); 
        if (offset > 0) 
         if (x > layout.getLineMax(0)) 
          setSelection(offset);  
         else 
          setSelection(offset - 1); 
        break; 
      } 
      return true; 
     } 
    }); 
関連する問題