Android的 – 如何把一个EditText(数字),然后将其转换为一个整数用于math?

我想知道如何把一个EditText区域,用户可以input一个数字,然后使其成为一个整数,所以它可以在程序中使用的加,减,除等。基本上我需要testing的input能够被用在一个计算器中,它将在代码中,然后它需要被放入一个TextView或string中,以便用户可以看到最终的答案。

更多信息:我有三个EditText区域,用户必须填写所有三个,然后按“等于”,它会告诉他们答案,所有的math和这样的需要在代码中,所以用户只需input信息,实际上计算任何东西。 感谢您的帮助,请问我是否需要更多的信息。

这样做和代码的最好方法将帮助我很多。

我已经添加了build议的代码,但我仍然得到一个parseInt错误,我仍然需要添加一个button来计算在EditText区域中input的数字。 我将如何做到这一点? 对不起,我对Java和Android的发展很公平。

package com.example.one; import com.example.one.R; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.text.Editable; import android.view.View; import android.widget.Button; import android.widget.EditText; public class monthlyp extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.monthlyp); EditText editone = (EditText) findViewById(R.id.editone); EditText editoneValue = (EditText) editone.getText(); int editoneNum = Integer.parseInt(editoneValue); } ; } 

Solutions Collecting From Web of "Android的 – 如何把一个EditText(数字),然后将其转换为一个整数用于math?"

首先,获取EditText的一个实例:

 EditText myEdit = (EditText) findViewById(R.id.edittext1); 

然后获取当前显示的string:

 String myEditValue = myEdit.getText().toString(); 

然后parsing它为一个整数:

 int myEditNum = Integer.parseInt(myEditValue); 

您必须在EditText的属性中更改Input type 。 对于数字,您有三个select: numbernumber numberSignednumber numberSigned 。 这取决于你想要的。

那么如果你想把你的EditText上的string转换成一个整数,你可以这样做:

 int value = new Integer(myEditText.getText().toString()).intValue; 
 EditText myEdit = (EditText) findViewById(R.id.edittext1); String myEditValue = myEdit.getText().toString(); int myEditNum = Integer.parseInt(myEditValue); myEditNum.setText(textOut1); 

我正在使用上述获取用户input作为数字格式。 但是,当我尝试使用setText()方法显示在TextView(textOut1)中的int myEditNum时,我得到了一个setText方法的错误(说:''不能在原始typesint'')上调用setText(TextView)。

我也尝试(下面)将int myEditNum转换为一个string,然后将其显示到一个TextView,但仍然无法正常工作,因为我得到了setText方法的以下错误:''方法setText(TextView)是未定义的types串''。 EditText myEdit =(EditText)findViewById(R.id.edittext1);

 String myEditValue = myEdit.getText().toString(); int myEditNum = Integer.parseInt(myEditValue); String texting = Integer.toString(myEditNum); texting.setText(textOut1); 

为什么会发生这种情况,我该如何解决?

你应该使用:

 myEdit.setText(myEditValue); 

myEditValuemyEditValue的string版本。