我使用的自定义ListView
包含ProgressBar
和TextView
。现在,Progress Data可能包含float
值,因此我想在TextView中显示浮点值。但它显示错误:无法解析'43 .20'到int。如果我通过int那么它工作正常。
如何防止这个问题?
我的示例代码:
final SimpleAdapter adapter = new SimpleAdapter(this, aaReportData, R.layout.report_card1, new String[] { "Topic", "Accuracy", "Accuracy" },
new int[] { R.id.tvTopic, R.id.pbTopicAccuracy, R.id.tvAccuracy });
tvAccuracy
是我正在谈论的TextView。
的登录
03-11 12:32:38.913: E/AndroidRuntime(1187): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mytestbuddy.anatomy/com.mytestbuddy.anatomy.ReportCard}: java.lang.NumberFormatException: unable to parse '43.24' as integer
答案 0 :(得分:1)
首先要将浮动值转换为像这样的字符串
String Str = String.valueOf("43.50");
然后将str分配给textview。
TextView txt = new TextView(this);
txt.settext(Str);
像这样,试试这个。
答案 1 :(得分:1)
您可以连接浮点值
textView.setText(""+floatValue);
答案 2 :(得分:0)
在使用(int)进行类型转换之前使用Math.round()应该将float舍入到最接近的整数
答案 3 :(得分:0)
另一种方法也可以试试这个:
浮动值= 30.0F; Integer intValue = Integer.valueOf(value.intValue());
然后你可以将inValue转换为String格式,然后根据需要在Textview上设置String。
希望它能帮到你!!