将String转换为Int Android时崩溃

时间:2013-12-31 16:30:33

标签: java android string int

首先,我很抱歉,如果已经有答案,但我已经尝试过,但是他们没有工作。 我正在将EditText转换为int,然后添加1并显示它。我知道这是导致应用崩溃的转换,因为我尝试将其显示为String而不更改它并且工作正常且EditText具有数字属性。任何帮助将不胜感激。

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.app.Activity;

public class MainActivity extends Activity {

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

        final EditText age;
        Button accept;
        final TextView ageTest;
        age = (EditText) findViewById(R.id.ageEdit);
        accept = (Button) findViewById(R.id.button1);
        ageTest = (TextView) findViewById(R.id.ageTest);
        accept.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

                int ageInt = Integer.valueOf(age.getText().toString());
                ageInt++;
                ageTest.setText(ageInt);

            }
        });

    }
}

2 个答案:

答案 0 :(得分:7)

您使用了错误的setText方法,因此您的代码可能会抛出ResourceNotFoundException

使用setText(CharSequence text)方法,即将int转换为String

ageTest.setText(String.valueOf(ageInt));

答案 1 :(得分:0)

添加:

String strI = Integer.toString(i);

到您的onClick功能,并将ageTest.setText(ageInt);更改为ageTest.setText(strI);