タイトルの通り、長押ししたテキストをTextViewで知るにはどうすればよいか悩んでいます。
caption.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
Log.d("log", "caption clicked");
String text = ((TextView)v).getText().toString();
Log.d("log", "1: " + text);
int start = ((TextView)v).getSelectionStart();
Log.d("log", "2: " + start);
int end = ((TextView)v).getSelectionEnd();
Log.d("log", "3: " + end);
Log.d("log", "selection: " + text.substring(start, end));
return true;
}
});
ここでは、開始変数と終了変数の両方に -1 を取得します。長押ししたテキストのインデックスを返すべきではありませんか? textView で長押しされたテキストを知る他の方法はありますか?