我想根据我得到的数据将TextView样式从粗体切换到正常
我是这样做的:
reserveCount.setText("Reservations " + reservationCount);
if(reservationCount<20){
Log.i("reserveCount", "typeface: NORMAL");
reserveCount.setTypeface(reserveCount.getTypeface(), Typeface.NORMAL);
} else {
Log.i("reserveCount", "typeface: BOLD");
reserveCount.setTypeface(reserveCount.getTypeface(), Typeface.BOLD);
}
但是样式完全没有改变(它一直保持粗体)。
尝试在最后调用reserveCount.invalidate()
或reserveCount.requestLayout()
来强制重绘View
试试像reserveCount.setText("Reservations " + reservationCount);
if(reservationCount<20){
Log.i("reserveCount", "typeface: NORMAL");
reserveCount.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL));
} else {
Log.i("reserveCount", "typeface: BOLD");
reserveCount.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
}