Я работаю над проектом Android с некоторыми TextViews для студентов, но я хочу, чтобы пользователи долгое время щелкали и получали возможность выделять некоторые части содержимого разными цветами, как это бывает в некоторых Библейские приложения или Adobe Reader. Возможность отмечать цвет текста происходит при длительном нажатии. Буду признателен за руководство, чтобы сделать эту работу.Как указать пользователю выделить TextView
ответ
использование 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);
Источник: https://guides.codepath.com/android/Working-with-the-TextView
Жаль, что это не то, что я хотел. Я обновил вопрос, чтобы отразить то, что мне действительно нужно. Я хочу, чтобы пользователи долго нажимали на текстовое представление, чтобы получить возможность выделять некоторые части текстов – user2810726
в соответствии с обновлением вашего сообщения: вам нужно установить clickablespan в каждом слове, когда щелкнет произведение, вы измените размер шрифта или цвет или запустите анимацию выбранной работы. clickablespan и SpannableString поддерживают только клики, это не поддерживается longclick –
Лучше использовать библиотеку для него. Перейдите по этой ссылке. https://github.com/athkalia/EmphasisTextView
дайте мне знать, это ценно или нет ... – Champandorid
Жаль, что это не то, что я хотел. Я обновил вопрос, чтобы отразить то, что мне действительно нужно. Я хочу, чтобы пользователи долго нажимали на текстовое представление, чтобы получить возможность выделить некоторые части текстов – user2810726
- 1. Как выделить TextView в Android
- 2. Как указать пользователю указать местоположение макроса?
- 3. Как выделить/указать ссылку без мыши?
- 4. Javascript - библиотека, позволяющая пользователю выделить часть изображения
- 5. выделить определенное слово в TextView
- 6. Как выделить символы в String для Textview?
- 7. Разрешить пользователю увеличить андроид textview
- 8. Как указать пользователю указать местоположение файла в Vaadin 7
- 9. Как указать пользователю указать свою позицию в приложении Google maps?
- 10. Как указать пользователю два варианта запуска кода?
- 11. Как указать пользователю размер массива в C
- 12. Как указать длинный запрос пользователю в Rails?
- 13. Позвольте пользователю указать webhook URI
- 14. Позволяет пользователю указать время таймера?
- 15. Выделить текст в TextView или WebView
- 16. Можно указать текст TextView для масштабирования в соответствии с TextView?
- 17. Позволяет пользователю указать точку на экране
- 18. Настройка SLURM, поэтому пользователю необходимо указать --account
- 19. как выделить уникальный номер пользователю из базы данных
- 20. Как я могу выделить строку разделения символов в TextView
- 21. Как выбрать или выделить TextView программно в Android?
- 22. Как выделить TextView или LinearLayout при нажатии на него?
- 23. Необходимо указать идентификатор ресурса для ошибки TextView
- 24. Как я могу выделить и указать цвет текста в richTextBox?
- 25. Как я могу указать пользователю, который textBox пуст или null?
- 26. Как указать пользователю, что команда влияет на подмножество множественного выбора?
- 27. Как выделить элементы ListView
- 28. Как выделить текст при нажатии
- 29. Позвольте пользователю указать, в какой учетной записи запускается служба
- 30. Разрешить пользователю указать директорию через Windows, Обзор Выбор
Вы хотите этого? https://android--code.blogspot.in/2016/03/android-highlight-text-in-textview.html –
Ваш вопрос непонятен, обратитесь к этому: http://stackoverflow.com/help/how- to-ask –
Я обновил вопрос. Спасибо. – user2810726