2016-12-20 30 views
0

可以请有人告诉我,我怎么从EditText添加到variablefloat,我可以在点击'添加'button? 这是我在XML EditText如何获得添加到变量float的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" /> 

这是我Button在相同的XML:

<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.

回答

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) 
0

删除这些行...

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

       float actualBalance + inputValue 

,并尝试这个....

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

希望这会帮助你。

0

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

CharSequence text = intputValue.getText(); 
StringBuilder sb = new StringBuilder(text); 
float f = Float.parseFloat(sb.toString()); 
1
float inputValueFloat = Float.parseFloat("" + inputValue.getText()); 

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

Float.parseFloat(String)String值转换为浮动