5

TextViews にはandroid:TextIsSelectable="true". ただし、長押しすると、ユーザーは 1 つの TextView に関連付けられたテキストのみを選択できます。「すべて選択」機能を使用するにはどうすればよいですか? ありがとう。

4

1 に答える 1

0

Android には、ユーザーが Textviews のリストからテキストを選択できるようにするデフォルトの動作はありません。

この機能が必要な場合は、テキストビューのいずれかを長押しするなど、選択したイベントをリッスンするリスナーを作成する必要があります。次に、テキストビューからすべてのテキストを取得して、何でもする必要があります。あなたはテキストでやりたい。

すべてのテキストを取得したら、それをすべてクリップボードに保存できます ( http://developer.android.com/guide/topics/text/copy-paste.html )

または、各テキストビューに対して次の操作を行うことで、各テキストビューのテキストを強調表示できます (明らかに、必要に応じて調整します)。

TextView TV = (TextView)findViewById(R.id.text);
TV.setText("Italic, highlighted, bold.", TextView.BufferType.SPANNABLE);

Spannable WordtoSpan = (Spannable) TV.getText();

WordtoSpan.setSpan(new BackgroundColorSpan(0xFFFFFF00), 8, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

TV.setText(WordtoSpan);

また、ユーザーにこれらすべてを実行するためのカスタム オプションを提供する場合は、この質問に示されている解決策を試すことができます: TextView でリンクが長押しされたときにコンテキスト メニューを表示する

それができたら、独自のメニューを追加して、それが選択されたときに何かを行うことができます。

于 2012-09-21T00:16:50.587 に答える