「 AndroidEditTextで、設定後にOnTouchListenerでカーソル位置を取得する方法」に投稿された回答は、スレッドを将来100MSにスケジュールして、AndroidにEditTextカーソル位置を更新する時間を与えることができることを示しています。これを実現する方法についてのコードは提供されていません。Toastを使用してカーソル位置を表示する次のテストコードを試しました。タッチ更新後のカーソル位置は表示されません。誰かがこのコードを修正して、タッチの位置がmText.setSelection(cursor)で提供されるようにすることはできますか?
OnTouchListener otl = new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent evt) {
Runnable r = new Runnable()
{
public void run()
{
int cursor = mText.getSelectionStart();
Toast.makeText(getApplicationContext(), "Cursor=" + cursor, Toast.LENGTH_SHORT).show();
mText.setSelection(cursor);
}
};
Handler handler = new Handler();
handler.postDelayed(r, 1500);
return true;
}
};
mText.setOnTouchListener(otl);