0

我有一个非常简单的问题。我想在一个活动中输入一个数字,然后在另一个活动中显示它。

输入.java

Button ok = (Button) findViewById(R.id.inputok);
ok.setOnClickListener (new OnClickListener ()
{

    public void onClick(View vie)
    {EditText et = (EditText) findViewById(R.id.ei);
    a = Integer.valueOf(et.getText().toString());


        Intent intent= new Intent (input.this, answer.class);
     intent.putExtra("i", a );
    startActivity(intent);
    }
} );      

现在在将它显示在另一个上之前,我想对整数执行一些操作,对它说 +1。

答案.java

 Bundle extras = getIntent().getExtras(); 
int a = extras.getInt("i");
++a;
TextView TV= (TextView) findViewById(R.id.TV);
TV.setText(a);

当我尝试运行它时,应用程序关闭,代码有问题吗?

4

3 回答 3

1

在将整数设置为文本视图之前,您必须将其转换为字符串,如下所示,

Integer.toString(a);

祝你好运

于 2012-06-07T11:56:38.927 回答
0

我希望问题是在setText();

尝试这个,

   int intent_data = getIntent().getExtras().getInt("i"); // to Get the data

     // Now increment the value.
     int newVal= intent_data+1; // or intent_data++;
     TextView TV= (TextView) findViewById(R.id.TV);
      TV.setText(""+newVal);

或者你可以使用,

 int intent_data = getIntent().getExtras().getInt("i"); // to Get the data

         // Now increment the value.
         int newVal= intent_data+1;
         TextView TV= (TextView) findViewById(R.id.TV);

      String s = String.valueOf(newVal);
    TV.setText(s);
于 2012-06-07T11:54:39.903 回答
0

是的,

问题是TV.setText(a);

我们只能在 setText 方法中设置 CharSequence 您尝试设置整数值是错误的

请尝试一下TV.setText(""+a);

我希望你的代码在得到它后能正常工作。

于 2012-06-07T11:55:05.780 回答