Integer中的Java.Lang.String无法应用于(android.Text.Editable)android studio

时间:2017-02-02 07:13:34

标签: android

尝试取一个整数并转换为EditText。

@BindView(R.id.goodQuantity)
EditText goodQuantity; 

controller.save(new Item(Integer.parseInt(goodQuantity.getText())));

错误说

parse(int) Java.Lang.String in Integer cannot be applied to (android.text.Editable)

3 个答案:

答案 0 :(得分:2)

getText返回Editable,因此您需要应用toString()将其转换为String

将您的代码放入try-catch,因为如果没有数字,或者输入为空,则会导致崩溃

    try{
       controller.save(new Item(Integer.parseInt(goodQuantity.getText().toString())));
                                     //                                   ^^^^ 
    }catch(Exception e){
      // Invalid input 
    }

答案 1 :(得分:1)

String获取EditText表单中的文字,然后转换为Int

controller.save(new Item(Integer.parseInt(goodQuantity.getText().toString())));

答案 2 :(得分:1)

controller.save(new Item(Integer.parseInt(goodQuantity.getText().toString())));

.toString()是必需的