在我的應用程序中,我顯示一個包含不同字體樣式的微調器,例如如果字體名稱是US DNealian,則它應該以相同的字體顯示。我知道如何通過view.setTypeface(tf)設置特定視圖的字體,但我使用數組arr_fonts來填充ArrayList,並且該ArrayList將填充微調器的適配器。以下是我正在使用的代碼片段。用不同字體的數據項顯示微調器
- >字符串數組用於填充的ArrayList
private String arr_fonts[] = {"US: D'Nealian", "US: D'Nealian Cursive", "US: Zaner-Bloser", "US: Zaner-Bloser Cursive",
"Aus: NSW/ACT", "Aus: NSW/ACT Cursive", "Aus: Qld Beginners", "Aus: Qld Cursive", "Aus: SA Beginners", "Aus: SA Cursive",
"Aus: Tas Beginners", "Aus: Tas Cursive", "Aus: Vic/NT/WA", "Aus: Vic/NT/WA Cursive", "WA Sassoon", "WA Sassoon Infant",
"NZ Beginners","UK Beginners", "UK Cursive", "Century Gothic (HWT)"};
- >的ArrayList用於填充適配器
ARRLIST_FONTS = new ArrayList<String>(Arrays.asList(arr_fonts));
私人無效set_font_name_Adapter(){
sp_fonts = (Spinner)findViewById(R.id.spFont);
font_name_Adapter= new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,ARRLIST_FONTS)
{
public View getView(int position, View convertView,ViewGroup parent) {
View v = super.getView(position, convertView, parent);
((TextView) v).setTextSize(12);
((TextView) v).setTextColor(Color.WHITE);
return v;
}
};
font_name_Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp_fonts.setAdapter(font_name_Adapter);
sp_fonts.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
font = ARRLIST_FONTS.get(arg2);
}
System.out.println("Selected item is ................."+font);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
}
我有.ttf所有的字體名稱。但我不知道如何單獨更改微調器中每個項目的字體。
任何人都可以提出任何事情或任何鏈接或相同的好教程。
謝謝。
在Typeface.createFromAsset(getAssets(), ARRLIST_FONTS。得到(位置));我應該在哪裏給.ttf文件設置字體?您提供的代碼不會更改該項目的字體。 – nidhi
@nidhi:意味着你在這一行有任何問題? –
@nidhi:你在擁有文件夾或任何其他地方使用字體? –