0

すべて - ユーザーが通貨値を入力する EditText フィールドがあります (例: "120.45")。その値を取得して、方程式で使用する必要があります。問題は、小数点が無視されるため、120.45 を 2 倍する代わりに、12,045 を 2 倍することです。この値を「120.45」と見なす式を作成する方法はありますか。ここに私のXMLがあります:

<EditText android:id="@+id/edit_bill"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"               
    android:layout_toRightOf="@id/view_dollar_sign" 
    android:layout_alignBaseline="@id/view_dollar_sign" 
    android:padding="5dp"
    android:singleLine="true"
    android:hint="@string/edit_bill"
    android:digits="0123456789."
    android:maxLength="6" 
    android:gravity="right"
    android:layout_alignBottom="@id/view_dollar_sign"
     />

これが私のコードです:

EditText text = (EditText)findViewById(R.id.edit_bill);             
    String value = text.getText().toString();       
    if(!value.contains("."))
        value = "."+value;
    float bill = Float.parseFloat(value);

前もって感謝します!

4

2 に答える 2

1

最初に文字列を float または double に解析できます。

    x = Double.parseDouble(editTextName.getText().toString());

その後、必要に応じて操作を実行してください!

その後、次のように出力 TextView に戻すことができます。

 answerTextView.setText("" + x);
于 2012-06-01T16:57:49.857 に答える
0

コードから if 条件を削除する

EditText text = (EditText)findViewById(R.id.edit_bill);             
    String value = text.getText().toString();       
    // if(!value.contains("."))   <---REMOVE THESE LINES
       //  value = "."+value;    <---REMOVE THESE LINES
    float bill = Float.parseFloat(value);
于 2012-06-01T16:57:58.910 に答える