Java 将文本从EditText转换为整数值错误
所以我现在正在开发我自己的私人应用程序,我只想为我和一些朋友使用。 我是德国人,所以我的英语可能不是最好的,我希望你能原谅我 现在我的问题是,我想在我的选项菜单中设置当月的预算,以便跟踪。我是通过使用带有按钮的EditText来实现的 现在,我想将在EditText中输入的字符串保存为字符串值和整数值,因为我想在主页上的文本视图中显示该值,并使用整数值计算我当前的预算,等等 现在我给你们看我的代码,我希望你们能告诉我它有什么问题。 我尝试在选项类中获取与我的选项菜单相关的值,然后尝试从选项类中获取值并将其放入主类中Java 将文本从EditText转换为整数值错误,java,android,android-edittext,setvalue,Java,Android,Android Edittext,Setvalue,所以我现在正在开发我自己的私人应用程序,我只想为我和一些朋友使用。 我是德国人,所以我的英语可能不是最好的,我希望你能原谅我 现在我的问题是,我想在我的选项菜单中设置当月的预算,以便跟踪。我是通过使用带有按钮的EditText来实现的 现在,我想将在EditText中输入的字符串保存为字符串值和整数值,因为我想在主页上的文本视图中显示该值,并使用整数值计算我当前的预算,等等 现在我给你们看我的代码,我希望你们能告诉我它有什么问题。 我尝试在选项类中获取与我的选项菜单相关的值,然后尝试从选项类中获
public class Options extends Activity {
Button GoBack, SetBudget;
private int Budget;
String BudgetString = "";
EditText BudgetEdit;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.options);
GoBack = (Button) findViewById(R.id.button2);
GoBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent GoBackToMain = new Intent("com.lunarrepublic.STARTINGPOINT");
startActivity(GoBackToMain);
}
});
SetBudget = (Button) findViewById(R.id.button8);
SetBudget.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
BudgetEdit = (EditText) findViewById(R.id.editText1);
BudgetString = EditText.getText();
//In the Line above this is the error "Type mismatch. Cannot convert Editable to String
Budget = Integer.parseInt(BudgetString);
}
});
}
但如果我尝试将“BudgetString”设置为可编辑,它也不会工作。
对于我的问题,GoBack按钮是不必要的,所以您不必仔细阅读它
所以我希望你们能理解我的问题,也许能帮我解决它
提前感谢更改此设置
SetBudget.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
BudgetEdit = (EditText) findViewById(R.id.editText1);
BudgetString = EditText.getText();
//In the Line above this is the error "Type mismatch. Cannot convert Editable to String
Budget = Integer.parseInt(BudgetString);
}
});
到
这是错误的
BudgetString = EditText.getText();
使用低于1
BudgetString = BudgetEdit.getText().toString();
BudgetString=EditText.getText().toString()代码>可编辑
实际上不是一个字符串
。您必须使用toString()
转换为parseInt()
可以接受的数据类型代码>,这是错误的,请使用您的对象BudgetEdit
。同时保持Budget=Integer.parseInt(BudgetString)代码>在try catch中捕获任何数字格式异常。我的错误消失了,所以我想这就是答案:)非常感谢,但在我验证之前,我必须先修复我的应用程序。似乎昨晚我做错了什么,因为加载屏幕消失后,我的应用程序崩溃了。@nHatniene Happy Development非常感谢你救了我一天:D我修复了错误idk为什么,但我的应用程序崩溃了,因为我的主类中有一个未使用的变量和一个未使用的EditText参数lol
BudgetString = BudgetEdit.getText().toString();