如何将EditText输入添加到变量float?

时间:2016-12-20 12:44:43

标签: java android variables android-edittext

有人可以告诉我,我如何从input添加到EditText variable {c}获取float我可以在点击后点击应用中的其他位置'添加' button? 这是我在xml中的EditText

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal"
    android:ems="10"
    android:id="@+id/depositInput"
    android:hint="enter a sum" />

这是我在同一个xml中的Button

<Button
    android:text="add transaction
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/addDepositButton" />

这是我尝试在class

中完成此操作
public class AddMoneyTransaction extends AppCompatActivity {

Button addDepositButton;
EditText depositInput;
float inputValue;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add_money_transaction);

    addDepositButton = (Button)findViewById(R.id.addDepositButton);
    depositInput   = (EditText)findViewById(R.id.depositInput);

    addDepositButton.setOnClickListener(
            new View.OnClickListener()
            {
                public void onClick(View view)
                {
                    // get EditText by id
                    (EditText) inputValue = (EditText) findViewById(R.id.depositInput);

                    float actualBalance + inputValue
                }
            });
}
}

我知道这不起作用。这就是我要问的原因。请忽略}括号中的小格式错误(这只是在这篇文章中,而不是在实际的类中)。 Thank you.

4 个答案:

答案 0 :(得分:1)

float inputValueFloat = Float.parseFloat("" + inputValue.getText());
  

"" + inputValue.getText()用于将输入的文本转换为String

     

Float.parseFloat(String)String值转换为float

答案 1 :(得分:0)

半伪代码:

// get the view
(EditText) inputView = (EditText) findViewById(R.id.depositInput);

// get the string inside the EditText
String inputStringValue = inputView.getText().toString();

// parse it to a long
long inputLongValue = Long.valueOf(inputStringValue)

答案 2 :(得分:0)

删除这些行...

// get EditText by id
                (EditText) inputValue = (EditText) findViewById(R.id.depositInput);

                float actualBalance + inputValue

试试这个......

float number = Float.valueOf(depositInput.getText().toString());

希望这会对你有所帮助。

答案 3 :(得分:0)

如何检索文本内容,然后将其转换为浮动?

CharSequence text = intputValue.getText();
StringBuilder sb = new StringBuilder(text);
float f = Float.parseFloat(sb.toString());