නිර්භීත, ඇල අකුරු වැනි පෙළ දර්ශන පෙළ සැකසෙන්නේ කෙසේද


853

සකස් කර ගන්නේ කෙසේද කියා TextViewජාවා තුල හා XML සැකැස්ම භාවිතා නොකර (තද හෝ ඇල අකුරු) ශෛලිය?

වෙනත් වචන වලින් කිවහොත්, මට android:textStyleජාවා සමඟ ලිවිය යුතුය.

Answers:


1914
textView.setTypeface(null, Typeface.BOLD_ITALIC);
textView.setTypeface(null, Typeface.BOLD);
textView.setTypeface(null, Typeface.ITALIC);
textView.setTypeface(null, Typeface.NORMAL);

පෙර යතුරුලියනය තබා ගැනීමට

textView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC)

5
ශෛලිය ඉවත් කිරීම සඳහා Typeface.NORMAL
Brais Gabin

354
ඔබ එය කරන්නේ නම්, ඔබට පෙර තිබූ යතුරුලියනයක් නැති වනු ඇත. පෙර එක තබා ගැනීමට, textView.setTypeface (textView.getTypeface (), Typeface.BOLD_ITALIC) වැනි දෙයක් කරන්න;
ලියෝකාඩියොටින්

36
textView.setTypeface(textView.getTypeface(), Typeface.NORMAL);a වෙතින් තද හෝ ඇල අකුරු ඉවත් නොකරනු ඇත TextView. ඒ සඳහා ඔබට භාවිතා කිරීමට අවශ්‍ය වනු ඇත textView.setTypeface(null, Typeface.NORMAL);.
ජැරට් මිලර්ඩ්

61
පෙර යතුරු textView.setTypeface(Typeface.create(textView.getTypeface(), Typeface.NORMAL), Typeface.NORMAL);
ලියනයක

6
ස්තූතියි h ෂන්ක්, ඔබ මාව නිවැරදි දිශාවට යොමු කළා. ඇත්ත වශයෙන්ම ඔබට අවශ්‍ය වන්නේ: textView.setTypeface (Typeface.create (textView.getTypeface (), Typeface.NORMAL));
PedroHidalgo

272

TextViewතද හෝ ඇල අකුරු සඳහා මෙය සකසන්න

textView.setTypeface(textView.getTypeface(), Typeface.BOLD);
textView.setTypeface(textView.getTypeface(), Typeface.ITALIC);
textView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC);

15
අහඹු ලෙස, ඔබට දැනට පවතින යතුරු tv.setTypeface(Typeface.create(tv.getTypeface(), Typeface.NORMAL));
පුවරුවේ

reg greg7gkb මෙයම tv.setTypeface(null, Typeface.BOLD);නොකරනු ඇත (පවතින යතුරු පුවරුවේ ශෛලිය ඉවත් කරන්න)?
ප්‍රබ්ස්

SetTypeface () වෙත ශුන්‍යව ගමන් කිරීම යන්නෙන් අදහස් වන්නේ TextView දෘඩ කේත සහිත පෙරනිමියක් භාවිතා කරන අතර එය කලින් සැකසූ යතුරු පුවරුවට වඩා වෙනස් විය හැකිය.
greg7gkb

144

ක්‍රමලේඛනය:

ඔබට ක්‍රමලේඛනය මඟින් මෙය කළ හැකිය setTypeface():

textView.setTypeface(null, Typeface.NORMAL);      // for Normal Text
textView.setTypeface(null, Typeface.BOLD);        // for Bold only
textView.setTypeface(null, Typeface.ITALIC);      // for Italic
textView.setTypeface(null, Typeface.BOLD_ITALIC); // for Bold and Italic

XML:

ඔබට කෙලින්ම XML ගොනුවේ මෙසේ සැකසිය හැකිය <TextView />:

android:textStyle="normal"
android:textStyle="normal|bold"
android:textStyle="normal|italic"
android:textStyle="bold"
android:textStyle="bold|italic"

11
XML පිරිසැලසුම භාවිතා නොකර එය කරන්නේ කෙසේදැයි ප්‍රශ්නකරු ඇසීය.
ජූලියන් සයිම්ස්

6
ප්රශ්නය පරීක්ෂා කරන්න with in Java and without using XMLමාර්ගය වන විට එය අන් අයටද උපකාරී වනු ඇත.
ප්‍රතික් බුටානි

5
ඔව්. මම ගූගල් හරහා මෙහි පැමිණි අතර එය මට උදව් විය. ස්තූතියි :)
අතුල්

97

ඔබට විකල්ප දෙකක් තිබේ:

විකල්ප 1 (තද, ඇල අකුරු සහ යටි ඉරි සඳහා පමණක් ක්‍රියා කරයි):

String s = "<b>Bolded text</b>, <i>italic text</i>, even <u>underlined</u>!"
TextView tv = (TextView)findViewById(R.id.THE_TEXTVIEW_ID);
tv.setText(Html.fromHtml(s));

විකල්ප 2:

ස්පැනබල් භාවිතා කරන්න ; එය වඩාත් සංකීර්ණ වේ, නමුත් ඔබට පෙළ ගුණාංග ගතිකව වෙනස් කළ හැකිය (තද / ඇල අකුරු පමණක් නොව වර්ණද).


6
සමග typeFaceඔබ මුළු පෙළ සඳහා තනි ශෛලිය සැකසිය හැක.
ගේබ්‍රියෙල් නෙගුට්

2
මම මගේ අභිරුචි පේළියේ උත්සාහ කරන විට එය නොලැබෙන්නේ ඇයි? නූල් s1 = "<b> ඔබ සිටින්නේ: </ b>"; holder.address = (පෙළ දර්ශනය) convertView.findViewById (R.id.address_text_view); holder.address.setText (Html.fromHtml (s1) + track.getAddress ());
ශයිලේන්ද්‍ර මද්ද

2
මෙම ක්‍රමය විශිෂ්ට අර්ධ පා text මෝස්තරයකි. විශාල පෙළ දර්ශනයක් තුළ උපුටා දැක්වීමක් මෙන්.
සාලිහ් එරික්චි

1
පළමු ක්‍රමය මගේ නඩුවේදී ක්‍රියාත්මක නොවේ පුද්ගලික අවලංගු නිර්මාණය ටෙක්ස්ට්වීව් (සංගීත මාතෘකාව, සංගීත පෙළ) {textView = නව පෙළ දර්ශනය (මෙය); textView.setTextSize (17); textView.setText (Html.fromHtml ("<b>" + මාතෘකාව + "</b>") + ":" + පෙළ); }
garenyondem

1
පිරිසැලසුම් නැවත ගණනය කිරීම් හේතුවෙන් පෙළ විශාල නම් spannable සහ from HTML විකල්පයන් ටයිප් කිරීම / setText මන්දගාමී විය හැකිය. ඔබට වෙනත් ක්‍රම තිබේ නම් එය වළක්වා ගන්න.
ඉයුජින් කාර්ටොයෙව්

44

ක්‍රමලේඛනය:

setTypeface()ක්‍රමවේදය භාවිතයෙන් ඔබට ක්‍රමලේඛිකව කළ හැකිය :

පෙරනිමි යතුරු පුවරුව සඳහා කේතය පහත දැක්වේ

textView.setTypeface(null, Typeface.NORMAL);      // for Normal Text
textView.setTypeface(null, Typeface.BOLD);        // for Bold only
textView.setTypeface(null, Typeface.ITALIC);      // for Italic
textView.setTypeface(null, Typeface.BOLD_ITALIC); // for Bold and Italic

ඔබට අභිරුචි යතුරු පුවරුව සැකසීමට අවශ්‍ය නම් :

textView.setTypeface(textView.getTypeface(), Typeface.NORMAL);      // for Normal Text
textView.setTypeface(textView.getTypeface(), Typeface.BOLD);        // for Bold only
textView.setTypeface(textView.getTypeface(), Typeface.ITALIC);      // for Italic
textView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC); // for Bold and Italic

XML:

ඔබට කෙලින්ම මේ ආකාරයට XML ගොනුවේ සැකසිය හැකිය <TextView />:

android:textStyle="normal"
android:textStyle="normal|bold"
android:textStyle="normal|italic"
android:textStyle="bold"
android:textStyle="bold|italic"

නැතහොත් ඔබට ඔබේ අකුරු අකුරු (වත්කම් වලින්) සැකසිය හැකිය. වැඩි විස්තර සඳහා සබැඳිය බලන්න


14
TextView text = (TextView)findViewById(R.id.THE_TEXTVIEW_ID);

දැන් textviewගුණාංග සකසන්න ..

text.setTypeface(null, Typeface.BOLD);  //-- for only bold the text
text.setTypeface(null, Typeface.BOLD_ITALIC);  //-- for  bold & italic the text
text.setTypeface(null, Typeface.ITALIC);  // -- for  italic the text

11

ඔබට පෙළ නිර්භීත කිරීමට අවශ්‍ය නම් . මෙම පේළිය ඔබේ පිරිසැලසුමෙහි පෙළ දර්ශන දේපලෙහි ලියන්න

android:textStyle="bold"

10
TextView text = (TextView)findViewById(R.layout.textName);
text.setTypeface(null,Typeface.BOLD);

10

වනු ඇත

yourTextView.setTypeface(null,Typeface.DEFAULT_BOLD);

සහ ඇල අකුරු ප්‍රතිස්ථාපනය Typeface.DEFAULT_BOLDසමඟ විය යුතුය Typeface.DEFAULT_ITALC.

එය ක්‍රියාත්මක වන ආකාරය මට දන්වන්න.


10

TextView ජාවා කේතය මඟින් ඔබේ ශෛලිය සැකසීමට මෙය උත්සාහ කරන්න

txt1.setTypeface(null,Typeface.BOLD_ITALIC);


7

මේක උත්සාහ කරන්න:

textView.setTypeface(textView.getTypeface(), Typeface.BOLD);
textView.setTypeface(textView.getTypeface(), Typeface.ITALIC);
textView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC);


4

මෙය කිරීමට සම්මත ක්‍රමය වන්නේ අභිරුචි මෝස්තර භාවිතා කිරීමයි. උදා-

දී styles.xmlපහත සඳහන් එක් කරන්න.

<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="MyApp.TextAppearance.LoginText">
    <item name="android:textStyle">bold|italic</item>
</style>

මෙම ශෛලිය TextViewපහත පරිදි ඔබේ ආලේප කරන්න.

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    style="@style/MyApp.TextAppearance.LoginText" />

4

ඔබට කළ හැකි එක් ක්‍රමයක් නම්:

myTextView.setTypeface(null, Typeface.ITALIC);
myTextView.setTypeface(null, Typeface.BOLD_ITALIC);
myTextView.setTypeface(null, Typeface.BOLD);
myTextView.setTypeface(null, Typeface.NORMAL);

ඔබට පෙර යතුරු ලියනය තබා ගැනීමට අවශ්‍ය නම් තවත් විකල්පයක් නම් කලින් අයදුම් කළ දේ නැති කර ගැනීමට අවශ්‍ය නොවන්නේ නම්:

myTextView.setTypeface(textView.getTypeface(), Typeface.NORMAL);      
myTextView.setTypeface(textView.getTypeface(), Typeface.BOLD);        
myTextView.setTypeface(textView.getTypeface(), Typeface.ITALIC);      
myTextView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC); 

4
textView.setTypeface(null, Typeface.BOLD_ITALIC);
textView.setTypeface(null, Typeface.BOLD);
textView.setTypeface(null, Typeface.ITALIC);
textView.setTypeface(null, Typeface.NORMAL);

පෙර යතුරුලියනය තබා ගැනීමට

textView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC)


3

විලාසිතාව තෝරා ගැනීමේ නිර්ණායක මත පදනම්ව ඔබට කළ හැකි පහසුම ක්‍රමය:

String pre = "", post = "";

if(isBold){
    pre += "<b>"; post += "</b>";
}
if(isItalic){
    pre += "<i>"; post += "</i>";
}
if(isUnderline){
    pre += "<u>"; post += "</u>";
}

textView.setText(Html.fromHtml(pre + editText.getText().toString()+ post));
// you can also use it with EidtText
editText.setText(Html.fromHtml(pre + editText.getText().toString()+ post));

2

මට අභිරුචි අකුරු භාවිතා කිරීමට අවශ්‍ය බැවින් පිළිතුරු කිහිපයක් පමණක් ඒකාබද්ධ කිරීම මට වැඩ කරයි. නිසැකවම මා layout.xmlවැනි සැකසුම් android:textStlyle="italic"AOS විසින් නොසලකා හරින ලදි. එබැවින් අවසාන වශයෙන් මට පහත පරිදි කිරීමට සිදු විය: strings.xmlඉලක්කගත නූලෙහි මෙසේ ප්‍රකාශ විය:

<string name="txt_sign"><i>The information blah blah ...</i></string>

ඊට අමතරව කේතයෙන්:

TextView textSign = (TextView) findViewById(R.id.txt_sign);
FontHelper.setSomeCustomFont(textSign);
textSign.setTypeface(textSign.getTypeface(), Typeface.ITALIC);

මම Spannableවිකල්පය උත්සාහ කළේ නැත (එය වැඩ කළ යුතු යැයි මම සිතමි) නමුත්

textSign.setText(Html.fromHtml(getString(R.string.txt_sign))) 

කිසිදු බලපෑමක් ඇති කළේ නැත. ද මම ඉවත් කරනවා නම් italic tagවලින් strings.xmlහැර යන setTypeface()සියල්ල තනිව එය එක්කෝ කිසිදු බලපෑමක් ඇති කොට ඇත. උපක්‍රමශීලී ඇන්ඩ්‍රොයිඩ් ...


2

මෙහි විස්තර කර ඇති පරිදි ඇන්ඩ්‍රොයිඩ් සංවර්ධකයින්ගේ සංගීත සම්පත් ඔබේ මෝස්තරගත පෙළ සම්පතෙහි පරාමිතීන් භාවිතා කිරීමට අවශ්‍ය නම්, ඔබට ආරම්භක වරහන් වලින් ගැලවිය යුතුය

<resources>
<string name="welcome_messages">Hello, %1$s! You have &lt;b>%2$d new messages&lt;/b>.</string>
</resources>

ආකෘතිය අමතන්න HTML (string)

Resources res = getResources();
String text = String.format(res.getString(R.string.welcome_messages), username, mailCount);
CharSequence styledText = Html.fromHtml(text);

2

මගේ තත්වයේදි:

1 - පෙළ සකසන්න

2 - යතුරු ලියනය සකසන්න

holder.title.setText(item.nome);
holder.title.setTypeface(null, Typeface.BOLD);

1

OnePlus Slate ™ අකුරු සමඟ වින්‍යාස කර ඇති OnePlus 5T හි මා වෙනුවෙන් වැඩ කළ එකම දෙය මෙයයි:

textView.setTypeface(Typeface.create(textView.getTypeface(), useBold ? Typeface.BOLD : Typeface.NORMAL));

වෙනත් ක්‍රම මඟින් එය BOLD හෝ NORMAL යන විට නැවත රොබෝටෝ වෙතට වැටෙනු ඇත.


1

AndroidX සමඟ සරල කළ ටැග් භාවිතා කරන අතරතුර HtmlCompat.fromHtml () භාවිතා කිරීම සලකා බලන්න

String s = "<b>Bolded text</b>, <i>italic text</i>, even <u>underlined</u>!"    
TextView tv = (TextView)findViewById(R.id.THE_TEXTVIEW_ID);
tv.setText(HtmlCompat.fromHtml(s, FROM_HTML_MODE_LEGACY));

1

පහත දැක්වෙන උදාහරණය භාවිතා කර ඔබට විවිධ යතුරුලියනය සැකසිය හැකිය -

textView.setTypeface(textView.getTypeface(), Typeface.BOLD);
textView.setTypeface(textView.getTypeface(), Typeface.ITALIC);
textView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC);

නැතහොත් ඔබට වෙනත් අකුරු වර්ගයක් සහ එහි යතුරු පුවරුව සැකසීමට අවශ්‍ය නම්. වත්කම් හෝ අමු ෆෝල්ඩරයට එය එකතු කර එය මෙන් භාවිතා කරන්න

  Typeface face= Typeface.createFromAsset(getAssets(), "font/font.ttf");
  tv1.setTypeface(face);

  Typeface face1= Typeface.createFromAsset(getAssets(), "font/font1.ttf");
  tv2.setTypeface(face1);

0

හොඳම ක්‍රමය එය අර්ථ දැක්වීමයි styles.xml

<style name="common_txt_style_heading" parent="android:style/Widget.TextView">
        <item name="android:textSize">@dimen/common_txtsize_heading</item>
        <item name="android:textColor">@color/color_black</item>
        <item name="android:textStyle">bold|italic</item>
</style>

එය යාවත්කාලීන කරන්න TextView

  <TextView
     android:id="@+id/txt_userprofile"
     style="@style/common_txt_style_heading"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_centerHorizontal="true"
     android:layout_marginTop="@dimen/margin_small"
     android:text="@string/some_heading" />

0
AppCompatTextView text =(AppCompatTextView)findViewById(R.layout.appCompatTextView1);
text.setTypeface(null,Typeface.BOLD);

ක්‍රමලේඛගතව යතුරු ලියනය සැකසීමට ඉහත ක්‍රමය භාවිතා කරන්න.


0

1) ඔබට එය TypeFace සමඟ සැකසිය හැකිය. 2) ඔබට කෙලින්ම strings.xml භාවිතා කළ හැකිය (ඔබේ වටිනාකම් ෆෝල්ඩරයේ) 3) ඔබට String myNewString = "මෙය මගේ තද අකුරු පා text ය මෙය මගේ ඇල අකුරු වේ මෙය මගේ යටි ඉරි ඇඳ ඇති නූලයි

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.