-1
## spannableはonclickのリスナーの外部からのデータにアクセスすることができないように、全体コードをクリックリスナー##次のコードでspannableを複数回実装する方法は?
rd.setOnClickListener(新しいView.OnClickListener(){
@Override
public void onClick(View view) {
int clicked=0;
clicked++; //< click counter>
String extract=tv2.getText().toString();
int startIndex=tv2.getSelectionStart();
int endIndex=tv2.getSelectionEnd();
extract=extract.substring(startIndex,endIndex);
ClipboardManager clipboardManager= (ClipboardManager)getSystemService(CLIPBOARD_SERVICE);
clipboardManager.setText(extract); // <Textview selection and clipboard >
int length = extract.length();
Spannable spannable=new SpannableString(extract);
spannable.setSpan(new BackgroundColorSpan(Color.GREEN), 0, length, 0);
// spannable to set the background color
String nsb98=tv2.getText().toString();
int length2=nsb98.length();
String nsb97=nsb98.substring(0,startIndex);
String nsb96=nsb98.substring(endIndex,length2);
tv2.setText(TextUtils.concat(nsb97, spannable,nsb96));//
に内部書かれています <>
if (clicked>0){ } }
...あなたの問題は...ですか? – pskink
テキストビューの一部を選択してrdボタンをクリックすると、そのテキストが強調表示されます。しかし、それは1回だけ働く。他の部分を強調表示しようとすると、最初のスパナブルがリセットされ、新しいスパナブルが強調表示されます。私は1つのstartIndexとendindexを保存することができます。複数のstartIndexとendIndexを格納できるので、複数のハイライト表示が可能なようにループを作成する方法は? –
質問をより明確にするには、上記のコメントを質問本体に追加してください。また、 '次のコード'を 'EditText'に置き換えたほうがよいでしょう – Ashis