Java 将文本从EditText转换为整数值错误

Java 将文本从EditText转换为整数值错误,java,android,android-edittext,setvalue,Java,Android,Android Edittext,Setvalue,所以我现在正在开发我自己的私人应用程序,我只想为我和一些朋友使用。 我是德国人,所以我的英语可能不是最好的,我希望你能原谅我 现在我的问题是,我想在我的选项菜单中设置当月的预算,以便跟踪。我是通过使用带有按钮的EditText来实现的 现在,我想将在EditText中输入的字符串保存为字符串值和整数值,因为我想在主页上的文本视图中显示该值,并使用整数值计算我当前的预算,等等 现在我给你们看我的代码,我希望你们能告诉我它有什么问题。 我尝试在选项类中获取与我的选项菜单相关的值,然后尝试从选项类中获

所以我现在正在开发我自己的私人应用程序,我只想为我和一些朋友使用。 我是德国人,所以我的英语可能不是最好的,我希望你能原谅我

现在我的问题是,我想在我的选项菜单中设置当月的预算,以便跟踪。我是通过使用带有按钮的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();