我想知道如何获取用户可以在其中输入数字的EditText区域,然后将其设为整数,以便在程序中用于加法、减法、除法等。Basicaly我需要测试输入,以便能够在代码中的计算器中使用,然后需要将其放入TextView或字符串中,以便用户可以看到最终答案。
更多信息:我有三个EditText区域,用户必须填写所有三个区域,然后按"等于",它会告诉他们答案,所有的数学等都需要在代码中,所以用户只输入信息,实际上不计算任何东西。谢谢你的帮助,如果你需要更多信息,请问我。
最好的方法和代码会对我有很大帮助。
我已经添加了建议的代码,但在parseInt上仍然出现错误,我仍然需要添加一个按钮来计算在EditText区域中输入的数字。我该怎么做?对不起,我对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);
}
;
}
首先,获取EditText:的一个实例
EditText myEdit = (EditText) findViewById(R.id.edittext1);
然后获取当前显示的字符串:
String myEditValue = myEdit.getText().toString();
然后解析为一个整数:
int myEditNum = Integer.parseInt(myEditValue);
您必须在EditText的属性中更改Input type
。对于数字,您有三个选择:number
、numberSigned
或numberDecimal
。这取决于你想要什么。
然后,如果你想将EditText上的字符串转换为整数,你可以这样做:
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);
我使用上面的内容来获得数字格式的用户输入。但是,当我尝试使用setText((方法在TextView(textOut1(中显示int myEditNum时,我得到了setText方法的错误(说:"不能在基元类型int上调用setText(TextView("(。
我还尝试(在下面(将int myEditNum转换为String,然后将其显示为TextView,但仍然不起作用,因为我收到了setText方法的以下错误:"方法setText(TextView(对于类型String未定义"。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);
myEditValue
是myEditNum
的字符串版本。