-1
public void setFont(String font_type, TextView[] fontArray)
{
    Typeface face = Typeface.createFromAsset(getAssets(), "fonts/" + font_type);

    for (int i = 0; i < fontArray.length; i++){
        fontArray.setTypeface(face);
    }
}

我想为不同的字体添加不同的文本视图。我不知道如何正确实现 foreach 循环。

4

2 回答 2

4

您缺少循环中的索引:

fontArray[i].setTypeface(face);
         ^^^
      add this

...或使用“for each”(如您所愿):

for (TextView tv : fontArray)
    tv.setTypeface(face);
于 2013-03-06T14:36:44.493 回答
1

for与任何其他 Java 数组一样,您可以使用-loop迭代其元素

for(TextView tv: fontArray) {
    tv.setTypeface(face);
}

有关另一个示例,请参见Java:带循环的数组。

请注意,名称fontArray有点误导...您可以将其重命名为textViews或更合适的名称...

于 2013-03-06T14:37:40.097 回答