此代码停止工作的原因

时间:2013-11-13 16:58:57

标签: android

我想编写一个代码,以便能够从标准输入中获取字符串并将其与String进行比较 我已经在Android项目中编写了这段代码 但不幸的是它停止了

    public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    EditText text = (EditText) findViewById(R.id.editText1);
    TextView text1 = (TextView) findViewById(R.id.textView1);

    String str = text.getText().toString();

    if(str.equals("yes"))
        text1.setText(str);
    else 
        text1.setText(0000);

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

 }

任何人都可以帮助我吗?

提前致谢

2 个答案:

答案 0 :(得分:3)

else中,该值应为字符串

text1.setText("0000");

您已指定为整数

答案 1 :(得分:2)

更改此

 text1.setText(0000);
 //int value
 // setText(resid) looks for a resource with the id mentioned
 // if not found you get ResourceNotFoundException

 text1.setText(String.valueOf(0000));
 // so use String.valueOf(intvalue); 

建议:

您可能希望在按钮单击

上获取edittext的值
EditText text; 
TextView text1;
Button b;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    text = (EditText) findViewById(R.id.editText1);
    text1 = (TextView) findViewById(R.id.textView1);
    b = (Button) findViewById(R.id.button1);
    b.setOnClickListener(new OnClickListener()
    {

      @Override
      public void onClick(View v) {
           String str = text.getText().toString();
           if(str.equals("yes"))
         text1.setText(str);
           else 
         text1.setText(String.valueOf(0000));

      } 
    });
    }