Guest User

Untitled

a guest
Apr 25th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.80 KB | None | 0 0
  1. <TextView
  2. android:id="@+id/1"
  3. android:layout_width="wrap_content"
  4. android:layout_height="wrap_content"
  5. android:textSize="@dimen/razmer0"
  6. android:isScrollContainer="true" />
  7. <TextView
  8. android:layout_width="match_parent"
  9. android:layout_height="match_parent"
  10. android:id="@+id/2"
  11. android:isScrollContainer="true"
  12. android:textSize="@dimen/Razmer1"/>
  13.  
  14. TextView text1 = (TextView)findViewById(R.id.1);
  15. en_text1.setText("123");
  16. TextView en_text2 = (TextView)findViewById(R.id.2);
  17. en_text2.setTypeface(null, Typeface.BOLD);
  18. en_text2.setText("456");
  19.  
  20. TextView text1 = (TextView)findViewById(R.id.1);
  21. en_text1.setText(Html.fromHtml("<b>" + "жирный" + "</b>" +
  22. "<small>" + "маленький" + "</small>"));
  23.  
  24. SpannableStringBuilder sb = new SpannableStringBuilder("HELLOO");
  25.  
  26. final StyleSpan boldSpanStyle= new StyleSpan(android.graphics.Typeface.BOLD);
  27. final StyleSpan normalSpanStyle = new StyleSpan(Typeface.NORMAL);
  28. sb.setSpan(boldSpanStyle, 0, 4, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
  29. sb.setSpan(normalSpanStyle, 4, 6, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
  30. textView.setText(sb);
  31.  
  32. String text="Ваш текст";
  33. Spannable span1 = new SpannableString(text); //основной (для вывода текста)
  34. Spannable span2 = new SpannableString(text); //изменяемый (нужен для цикла)
  35. String path="текст"; //слово которое необходимо изменить
  36. int startIndexOfPath = span2.toString().indexOf(path); //получаем начальный индекс слова в тексте
  37.  
  38. while (startIndexOfPath!=-1) { //если есть совпадение по тексту, то выполняется цикл:
  39.  
  40. span1.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), //меняем стиль слова на "жирный"
  41. startIndexOfPath, startIndexOfPath + path.length(), 0);
  42.  
  43. StringBuilder sTextBuilder = new StringBuilder(span2); //создаем StringBuilder
  44.  
  45. //заменяем найденное слово на любые другие символы в таком же кол-ве как само слово
  46. //например в слове текст 5 символов, поэтому меняем на 5 других символов
  47. //(нужно если в тексте несколько совпадений)
  48.  
  49. sTextBuilder.replace(startIndexOfPath, startIndexOfPath + path.length(),"12345");
  50.  
  51. span2=new SpannableString(sTextBuilder); //присваиваем измененный текст
  52.  
  53. startIndexOfPath = span2.toString().indexOf(path); //снова получаем начальный индекс слова в тексте
  54. }
  55.  
  56. textView.setText(span1); //выводим в textView конечный результат
Add Comment
Please, Sign In to add comment