EditText
Android アプリにビューがあります。その中に「内部リンク」が必要です。これは、内部にいくつかのボタンまたはスパンが必要でありEditText
、onClick
このボタンを使用していくつかのアクションを実行できることを意味します (Web ページにリダイレクトしません)。このボタンはClickableSpan()
こんな感じで実現しました
linkWord = "my link";
link = new SpannableString(linkWord);
cs = new ClickableSpan(){
private String w = linkWord;
@Override
public void onClick(View widget) {
wrd.setText(w);
}
};
link.setSpan(cs, 0, linkWord.length(), 0);
et.append(link);
このスパンをクリック可能にするために、私は使用しました
et.setMovementMethod(LinkMovementMethod.getInstance());
「内部リンク」は正常に機能しますet.setMovementMethod()
が、コピーと貼り付けの項目を使用すると、OnLongClick
メニューで無効になります。EditText
「リンク」が必要であり、同時にこのビューからテキストをコピーする必要があるため、これは問題です。
OnLongClickListener
一時的に「リンク」機能を無効にするようなものをリスナーに設定しremoveMovementMethod()
、コピー/貼り付けでメニューを使用し、テキストスイッチオンsetMovementMethod()
メソッドを再度コピーした後に使用することを考えています。しかし、私はこれを実現する方法がわかりません。
手伝って頂けますか?他の方法があるかもしれません...
ありがとうございました!