2017-02-06 103 views
-2

我正在爲學生開發一些帶有一些TextView的Android項目,但我希望用戶能夠長時間點擊並獲取選項以突出顯示某些內容的不同顏色部分聖經應用程序或Adobe Reader。標記文本顏色的選項發生在長時間點擊。 我會感謝任何指導,使這項工作。如何讓用戶突出顯示TextView

+0

你想要這個嗎? https://android--code.blogspot.in/2016/03/android-highlight-text-in-textview.html –

+0

你的問題不清楚,請參考:http://stackoverflow.com/help/how-問問 –

+0

我已經更新了這個問題。謝謝。 – user2810726

回答

0

使用Spannable字符串風格的標準 例子:

String firstWord = "Hello"; 
String secondWord = "World!"; 

TextView tvHelloWorld = (TextView)findViewById(R.id.tvHelloWorld); 

// Create a span that will make the text red 
ForegroundColorSpan redForegroundColorSpan = new ForegroundColorSpan(
     getResources().getColor(android.R.color.holo_red_dark)); 

// Use a SpannableStringBuilder so that both the text and the spans are mutable 
SpannableStringBuilder ssb = new SpannableStringBuilder(firstWord); 

// Apply the color span 
ssb.setSpan(
     redForegroundColorSpan,   // the span to add 
     0,         // the start of the span (inclusive) 
     ssb.length(),      // the end of the span (exclusive) 
     Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); // behavior when text is later inserted into the SpannableStringBuilder 
              // SPAN_EXCLUSIVE_EXCLUSIVE means to not extend the span when additional 
              // text is added in later 

// Add a blank space 
ssb.append(" "); 

// Create a span that will strikethrough the text 
StrikethroughSpan strikethroughSpan = new StrikethroughSpan(); 

// Add the secondWord and apply the strikethrough span to only the second word 
ssb.append(secondWord); 
ssb.setSpan(
     strikethroughSpan, 
     ssb.length() - secondWord.length(), 
     ssb.length(), 
     Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); 

// Set the TextView text and denote that it is Editable 
// since it's a SpannableStringBuilder 
tvHelloWorld.setText(ssb, TextView.BufferType.EDITABLE); 

enter image description here

來源:https://guides.codepath.com/android/Working-with-the-TextView

+0

對不起,這不是我想要的。我已經更新了這個問題,以反映我真正需要的東西。我希望用戶長時間點擊文本視圖,根據文章的更新情況,選擇突出顯示文本 – user2810726

+0

的某些部分:需要在每個單詞中設置clickablespan,單擊某個作品時需要更改字體大小或顏色,或者開始動畫選擇的作品。 clickablespan和SpannableString只支持點擊不支持longclick –

相關問題