2015-12-14 142 views
-1

林生成2个随机值,并在EditText上您需要输入添加这2个值的结果,当IM特林解析我从EditText上就得到崩溃我的应用程序时错误解析字符串为int

public class Main2Activity extends AppCompatActivity { 

public int wynik; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main2); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    setContentView(R.layout.activity_main2); 
    TextView text = (TextView) findViewById(R.id.txtv); 

    Random r = new Random(); 
    int i1 = (r.nextInt(100 - 1) + 1); 
    int i2 = (r.nextInt(100 - 1) + 1); 
    text.setText(i1 +" + " + i2 + " = "); 
    wynik =i1+i2; 
}; 
    public void backtomain(View view) 
    { 
     EditText editText = (EditText) findViewById(R.id.edittext); 
     String etstring =editText.getText().toString(); 
     Integer etint = Integer.parseInt(etstring); <---------------- CRASH CUZ OF THIS LINE 

     //if(etint==wynik) 
     //{ 
      Intent intent = new Intent(this, AalarmActivity.class); 
      intent.putExtra("toggleBtn", true); 
      startActivity(intent); 
      finish(); 
     //} 
     //else 
     //{ 
     // Toast.makeText(this, "Error ", 
     //   Toast.LENGTH_LONG).show(); 
     //} 
    } 
} 

评论行不完成首先需要修复解析部分。

+2

它如何崩溃?请发布完整的崩溃日志/堆栈跟踪。 – Reigertje

+0

java.lang.IllegalStateException:无法执行android的方法:onClick @Reigertje – kociolekpanoramixa

+0

可能您的输入不是数字。把android:inputType =“number”'放在XML –

回答

3

您可能正在接收不是数字的输入。

您可以强制使用的输入类型mumber,修改XML您EditText,包括该物业:

android:inputType="number" 

这将迫使用户仅输入号码,您Integer.parseInt(etstring);应解析数无需格式例外。