9 ответов:
если вы используете XML-файл string resource (поддерживает HTML-теги), это можно сделать с помощью
<b> </b>,<i> </i>и<u> </u>.<resources> <string name="your_string_here"> This is an <u>underline</u>. </string> </resources>если вы хотите подчеркнуть что-то из кода использовать:
TextView tv = (TextView) view.findViewById(R.id.tv); SpannableString content = new SpannableString("Content"); content.setSpan(new UnderlineSpan(), 0, content.length(), 0); tv.setText(content);надеюсь, что это помогает
используйте этот:
TextView txt = (TextView) findViewById(R.id.Textview1); txt.setPaintFlags(txt.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);
<resource> <string name="your_string_here">This is an <u>underline</u>.</string> </resources>Если это не сработает, то
<resource> <string name="your_string_here">This is an <u>underline</u>.</string>потому что "
и вывода
TextView textView = (TextView) view.findViewById(R.id.textview); textView.setText(Html.fromHtml(getString(R.string.your_string_here)));
прежде всего перейти к строке.xml-файл
вы можете добавить любые атрибуты html , такие как, Курсив или полужирный или подчеркивание здесь.
<resource> <string name="your_string_here">This is an <u>underline</u>.</string> </resources>
другой способ сделать это-создать пользовательский компонент, расширяющий TextView. Это хорошо для случаев, когда вам нужно иметь несколько подчеркнутых текстовых представлений.
вот код для компонента:
package com.myapp.components; import android.content.Context; import android.support.v7.widget.AppCompatTextView; import android.text.SpannableString; import android.text.style.UnderlineSpan; import android.util.AttributeSet; public class LinkTextView extends AppCompatTextView { public LinkTextView(Context context) { this(context, null); } public LinkTextView(Context context, AttributeSet attrs) { super(context, attrs); } @Override public void setText(CharSequence text, BufferType type) { SpannableString content = new SpannableString(text); content.setSpan(new UnderlineSpan(), 0, content.length(), 0); super.setText(content, type); } }и как его использовать в xml:
<com.myapp.components.LinkTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Hello World!" />
я использовал ниже способ, это работа для меня. ниже приведен пример для кнопки, но мы также можем использовать в TextView.
Button btnClickMe= (Button) findViewById(R.id.btn_click_me); btnClickMe.setPaintFlags(btnClickMe.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);
вы можете использовать разметку ниже, но учтите, что если вы выберите
textAllCapstotrueэффект подчеркивания будет удален.<resource> <string name="my_string_value">I am <u>underlined</u>.</string> </resources>
Примечание
использование textAllCaps со строкой (login_change_settings), которая содержит разметку; разметка будет удалена преобразованием caps
преобразование textAllCaps text приведет к вызову toString на CharSequence, что имеет чистый эффект удаления любой разметки такие как. Эта проверка ищет использование строк, содержащих разметку, которая также указывает textAllCaps=true.
для завершения Bhavin ответа. Например, чтобы добавить подчеркивание или перенаправление.
((TextView) findViewById(R.id.tv_cgu)).setText(Html.fromHtml(getString(R.string.upload_poi_CGU))); <string name="upload_poi_CGU"><![CDATA[ J\'accepte les <a href="">conditions générales</a>]]></string>и вы можете узнать здесь совместимый тег : http://commonsware.com/blog/Android/2010/05/26/html-tags-supported-by-textview.html
существуют различные способы достижения подчеркнутый текст в Android TextView.
1.
<u>This is my underlined text</u>илиI just want to underline <u>this</u> word2.Вы можете сделать то же самое программно.
`textView.setPaintFlags(textView.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);`3.Это может быть сделано путем создания SpannableString, а затем установить его в качестве текста поле TextView собственность
SpannableString text = new SpannableString("Voglio sottolineare solo questa parola"); text.setSpan(new UnderlineSpan(), 25, 6, 0); textView.setText(text);
Comments