2013-03-06 65 views
-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循環。作爲數組的Android方法參數

+0

不清楚!你能詳細說明嗎? – 2013-03-06 14:36:39

+0

我不確定我是否有問題。你需要訪問字體數組的每個元素 - 也許刷一些Java基礎知識將是一個好主意。另外,'for(TextView textView:textViews)'比調用'fontArray'更有意義,因爲它不是一個字體數組。 – 2013-03-06 14:37:01

回答

4

你缺少的循環索引:

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

...或使用 「每個」(爲你想):

for (TextView tv : fontArray) 
    tv.setTypeface(face); 
+0

謝謝,很好的解釋 – coreprojectz 2013-03-06 14:42:47

1

像任何其他Java數組,你可以使用for -loop

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

參見Java: Array with loop爲另一示例迭代其元件。

注意,該名稱fontArray是有點誤導。你可以把它重命名爲textViews或更合適些......

相關問題