[英]Change TextSize with a spinner
我設法用微調器更改了某些文本的顏色。 但是現在我想使用另一個微調器來更改相同文本的大小。 我將顏色盒放入開關功能中以更改顏色。
像那樣
switch (i) {
case 0:
description.setText(des[i]);
preferences.edit().putInt(SELECTED_COLOR, Color.WHITE).apply();
break;
case 1:
description.setText(des[i]);
preferences.edit().putInt(SELECTED_COLOR, Color.BLUE).apply();
break;
我把所有內容寫下來,但我不知道如何在案例中調用TextSize。 我認為這樣可以工作:
switch (d) {
case 0:
description2.setText(des2[d]);
preferences2.edit().putInt(SELECTED_SIZE, ????); <==
}
}
但是我不能使用TextSize或類似的東西。 要更改顏色,我使用了Color.BLUE/RED/GREEN / ...,但現在我想更改TextSize ...總是很難解釋我的問題。
如果要像使用顏色一樣使用共享首選項和switch語句,則可以執行以下操作:
在switch語句中,類似於您處理顏色的方式,將與所選微調器索引關聯的文本大小添加到共享的首選項中:
switch(i) {
case 0:
preferences.edit().putInt(SELECTED_SIZE, 16).apply();
break;
case 1:
preferences.edit().putInt(SELECTED_SIZE, 18).apply();
break;
// other cases go here...
}
然后,在包含要更改其文本大小的TextView
的活動中(在本示例中,名為textViewToChange
),檢索保存的值,並使用它來設置文本大小:
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
int selectedTextSize = preferences.getInt(SELECTED_SIZE, 0);
textViewToChange.setTextSize(TypedValue.COMPLEX_UNIT_SP, selectedTextSize);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.