如何使用此特定属性以编程方式创建 TextView?

How create TextView programatically with this specifics Attributes?

我目前正在这样创建 TextView:

LinearLayout myLayout = (LinearLayout) activity.findViewById(R.id.ll1);
    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.WRAP_CONTENT,    LinearLayout.LayoutParams.WRAP_CONTENT);

for(int l=0; l<4; l++)
    {
        pairs[l] = new TextView(context);
        pairs[l].setTextSize(TypedValue.COMPLEX_UNIT_DIP, 16);
        pairs[l].setLayoutParams(lp);
        pairs[l].setId(l);
        pairs[l].setText("asd");
        myLayout.addView(pairs[l]);
    }

现在我想将此属性设置为所有此 TextView:

我在以编程方式创建 TextView 时找不到设置这些属性的方法,我该怎么做?

可以使用 setTextSize(TypedValue.COMPLEX_UNIT_DIP, <float>) 设置 dp 中的文本大小 - 请参阅文档 [此处](https://developer.android.com/reference/android/widget/TextView.html#setTextSize(int, float))。

至于字体系列,恐怕我不知道 - 希望其他人可以帮助您:)

您可以使用 Typeface 对象设置字体。

TextView tv = new TextView(context);
Typeface face = Typeface.createFromAsset(getAssets(),
       "fonts/filename.ttf");
tv.setTypeface(face);

将字体放入项目的assets文件夹中。

要更改 TextView 的字体系列,请使用 setTypeface

例如:

Typeface tf = Typeface.create("cursive", Typeface.NORMAL);
for(int l=0; l<4; l++)
{
    pairs[l] = new TextView(context);
    pairs[l].setTypeface(tf);
    ...
}

此外,这可能令人感兴趣:How to change fontFamily of TextView in Android