Java TextView不显示科学记数法中的大值
以下是文本视图:Java TextView不显示科学记数法中的大值,java,android,xml,double,scientific-notation,Java,Android,Xml,Double,Scientific Notation,以下是文本视图: <TextView android:id="@+id/input" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#000000" android:gravity="right" android:textAlignment="viewEnd" android:textColor="#ffffff" android:textSize="5
<TextView
android:id="@+id/input"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#000000"
android:gravity="right"
android:textAlignment="viewEnd"
android:textColor="#ffffff"
android:textSize="50sp"/>
TextView
只需扩展更多行以适应较大的数字(现在是字符串)。我想这是因为我使用了包装内容
作为高度,但我不能使用填充父项
如果我使用android:lines=“1”,那么我根本看不到所有的数字。
那么,在显示在TextView
中之前,如何将double转换为科学符号呢
编辑
我刚刚发现它是用科学记数法显示的,但只适用于大于10^12的值,但它们不只是可见的
所以我只是想显示大于1E10的值。将double转换成科学符号,就像这样
public static String parseToCientificNotation(double result) {
int cont = 0;
java.text.DecimalFormat DECIMAL_FORMATER = new java.text.DecimalFormat("0.##");
while (((int) result) != 0) {
result/= 10;
cont++;
}
return DECIMAL_FORMATER.format(result).replace(",", ".") + " x10^ -" + cont;
}将double转换成那样的科学符号
public static String parseToCientificNotation(double result) {
int cont = 0;
java.text.DecimalFormat DECIMAL_FORMATER = new java.text.DecimalFormat("0.##");
while (((int) result) != 0) {
result/= 10;
cont++;
}
return DECIMAL_FORMATER.format(result).replace(",", ".") + " x10^ -" + cont;
}精彩的可能重复。它甚至在格式化更小的数字。我修改了它。谢谢,太好了。它甚至在格式化更小的数字。我修改了它。非常感谢。