Android'de metni kalın olarak nasıl değiştirirsiniz?


Yanıtlar:


552

layout.xmlDosyada bunu yapmak için :

android:textStyle

Örnekler:

android:textStyle="bold|italic"

Programlı olarak yöntem:

setTypeface(Typeface tf)

Metnin görüntülenmesi gereken yazı tipi ve stilini ayarlar. Tüm Typefaceailelerin aslında kalın ve italik varyantları olmadığını unutmayın , bu nedenle setTypeface(Typeface, int)gerçekten istediğiniz görünümü elde etmek için kullanmanız gerekebilir .


351

İşte çözüm

TextView questionValue = (TextView) findViewById(R.layout.TextView01);
questionValue.setTypeface(null, Typeface.BOLD);

77

Basitçe aşağıdakileri yapabilirsiniz:

Özniteliği XML

  android:textStyle="bold"

Programlı olarak yöntem:

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

Typeface boldTypeface = Typeface.defaultFromStyle(Typeface.BOLD);

Tv.setTypeface(boldTypeface);

Umarım bu size yardımcı olur.


Sonucu bana bildirin
saeed

54

XML'de

android:textStyle="bold" //only bold
android:textStyle="italic" //only italic
android:textStyle="bold|italic" //bold & italic

Yalnızca belirli fontları kullanabilirsiniz sans, serifve monospacexml yoluyla, Java kodu özel yazı tipleri kullanabilirsiniz

android:typeface="monospace" // or sans or serif

Programlı olarak (Java kodu)

TextView textView = (TextView) findViewById(R.id.TextView1);

textView.setTypeface(Typeface.SANS_SERIF); //only font style
textView.setTypeface(null,Typeface.BOLD); //only text style(only bold)
textView.setTypeface(null,Typeface.BOLD_ITALIC); //only text style(bold & italic)
textView.setTypeface(Typeface.SANS_SERIF,Typeface.BOLD); 
                                         //font style & text style(only bold)
textView.setTypeface(Typeface.SANS_SERIF,Typeface.BOLD_ITALIC);
                                         //font style & text style(bold & italic)


20

Özel yazı tiplerini kullandığınız, ancak kullanabileceğiniz yazı tipi için kalın yazı tipinin olmadığı durumlarda:

myTextView.setText(Html.fromHtml("<b>" + myText + "</b>");


16

Eğer çiziyorsanız, bunu yapacaktır:

TextPaint.setFlags(Paint.FAKE_BOLD_TEXT_FLAG);

16

İdeal dünyada, XML tanımını şu şekilde düzenlediğinizde metin stili niteliğini ayarlarsınız:

<TextView
    android:id="@+id/TextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textStyle="bold"/>

setTypefaceYöntemi kullanarak kodunuzda aynı sonucu dinamik olarak elde etmenin basit bir yolu vardır . Bu TextView için yazı tipi stilini tanımlayan Typeface sınıfını iletmeniz ve nesneniz olması gerekir . Yukarıdaki XML tanımıyla aynı sonucu elde etmek için aşağıdakileri yapabilirsiniz:

TextView Tv = (TextView) findViewById(R.id.TextView);
Typeface boldTypeface = Typeface.defaultFromStyle(Typeface.BOLD);
Tv.setTypeface(boldTypeface);

İlk satır, nesne formunu önceden tanımlanmış bir stil oluşturur (bu durumda Typeface.BOLD , ancak daha önceden tanımlanmış çok daha fazlası vardır). Bir yazı tipi örneğimiz olduğunda, bunu TextView üzerinde ayarlayabiliriz. İşte bu yüzden içeriğimiz tanımladığımız stilde görüntülenecek.

Umarım size çok yardımcı olur.Daha iyi bilgi için ziyaret edebilirsiniz

http://developer.android.com/reference/android/graphics/Typeface.html


14

XML itibaren ayarlayabilirsiniz textstyle için kalın aşağıdaki gibi

<TextView
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="Bold text"
   android:textStyle="bold"/>

Programlı olarak, TextView öğesini kalın olarak kalın olarak ayarlayabilirsiniz

textview.setTypeface(Typeface.DEFAULT_BOLD);

10

Değerler klasöründeki style.xml dosyasında istediğiniz biçimle yeni bir stil tanımlayın

<style name="TextViewStyle" parent="AppBaseTheme">
    <item name="android:textStyle">bold</item>
    <item name="android:typeface">monospace</item>
    <item name="android:textSize">16sp</item>
    <item name="android:textColor">#5EADED</item>

</style>

Sonra TextView özellikleri ile aşağıdaki kodu yazarak bu stili TextView için uygulayın

style="@style/TextViewStyle"

9

Gitmenin en iyi yolu:

TextView tv = findViewById(R.id.textView);
tv.setTypeface(Typeface.DEFAULT_BOLD);

6

Android Studio'da yeni bir başlangıç ​​yaptığınızı varsayarsak, bunu kullanarak tasarım görünümü XML'sinde yapabilirsiniz

android:textStyle="bold"          //to make text bold
android:textStyle="italic"        //to make text italic
android:textStyle="bold|italic"   //to make text bold & italic


5

Bunu yazı tipi için kullanabilirsiniz

Sınıf Adı TypefaceTextView oluşturma ve TextView'i genişletme

özel statik Harita mTypefaces;

public TypefaceTextView(final Context context) {
    this(context, null);
}

public TypefaceTextView(final Context context, final AttributeSet attrs) {
    this(context, attrs, 0);
}

public TypefaceTextView(final Context context, final AttributeSet attrs, final int defStyle) {
    super(context, attrs, defStyle);
    if (mTypefaces == null) {
        mTypefaces = new HashMap<String, Typeface>();
    }

    if (this.isInEditMode()) {
        return;
    }

    final TypedArray array = context.obtainStyledAttributes(attrs, styleable.TypefaceTextView);
    if (array != null) {
        final String typefaceAssetPath = array.getString(
                R.styleable.TypefaceTextView_customTypeface);

        if (typefaceAssetPath != null) {
            Typeface typeface = null;

            if (mTypefaces.containsKey(typefaceAssetPath)) {
                typeface = mTypefaces.get(typefaceAssetPath);
            } else {
                AssetManager assets = context.getAssets();
                typeface = Typeface.createFromAsset(assets, typefaceAssetPath);
                mTypefaces.put(typefaceAssetPath, typeface);
            }

            setTypeface(typeface);
        }
        array.recycle();
    }
}

fontu varlık klasöründe oluşturulan fontlar klasörüne yapıştırın

<packagename.TypefaceTextView
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1.5"
        android:gravity="center"
        android:text="TRENDING TURFS"
        android:textColor="#000"
        android:textSize="20sp"
        app:customTypeface="fonts/pompiere.ttf" />**here pompiere.ttf is the font name**

Satırları xml'deki üst mizanpaja yerleştirin

 xmlns:app="http://schemas.android.com/apk/res/com.mediasters.wheresmyturf"
xmlns:custom="http://schemas.android.com/apk/res-auto"

4

Android TextView'i kalın yapmanın 4 yolu - Tam yanıt burada.

  1. Android kullanma : textStyle niteliği

    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TEXTVIEW 1" android:textStyle="bold" /> Kalın ve italik için kalın | italik kullanın.

  2. setTypeface () yöntemini kullanarak

    textview2.setTypeface(null, Typeface.BOLD);
    textview2.setText("TEXTVIEW 2");
  3. HtmlCompat.fromHtml () yöntemi, Html.fromHtml () API düzey 24'te kullanımdan kaldırıldı.

     String html="This is <b>TEXTVIEW 3</b>";
     textview3.setText(HtmlCompat.fromHtml(html,Typeface.BOLD));

3

Benim durumumda, string.xml aracılığıyla değer iletmek html Tag ile çalıştı.

<string name="your_string_tag"> <b> your_text </b></string>


1
editText.setTypeface(Typeface.createFromAsset(getAssets(), ttfFilePath));
etitText.setTypeface(et.getTypeface(), Typeface.BOLD);

hem yazı tipini hem de stili Kalın olarak ayarlar.


2
Kullanım durumunu ve uygulamasını daha iyi açıklamak için cevabınıza kısa bir açıklama eklemelisiniz.
Dov Benyomin Sohacheski

Bu, mevcut cevaplara yeni bir şey eklemez.
nvoigt

@nvoigt, cevabı diğerlerinden farklı, en azından ikinci satır. Muhtemelen diğer çözümlerden daha iyidir. Sanırım stackoverflow.com/questions/6200533/… .
CoolMind
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.