0

私は非常に単純な問題を抱えています。アクティビティに数値を入力して、それを別のアクティビティに表示したいと思います。

input.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と言います。

answer.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 に答える