4

onActivityResultメソッドを作成している間、Eclipseは、予告なしの理由でそれを変数としてのみ認識します。

protected void onActivityResult(int resultCode, int requestCode, Intent data){

    super.onActivityResult(requestCode, resultCode, data);
    if(resultCode == Class_2.RESULT_CODE && requestCode == REQUEST_CODE) {
        if (data.hasExtra("returnKey1")) {
            int number = number + getIntent().getExtras().getInt("returnKey1");
        }
    }
}

「 onActivityResult 」を超えると、エラーが表示され、「 voidは変数onActivityResultの無効なタイプです」というメッセージが表示されます。

4

4 に答える 4

2

クラスに他に何があるかわかりませんが、変更してみてください

protected void onActivityResult(int resultCode; int requestCode; Intent data)

protected void onActivityResult(int resultCode, int requestCode, Intent data)

次の呼び出しも含める必要があります。

super.onActivityResult(requestCode, resultCode, data);
于 2012-12-20T12:40:10.623 に答える
1

これをメソッドに入れます

super.onActivityResult(requestCode, resultCode, data);
于 2012-12-20T12:40:18.990 に答える
1

onActivityResultアクティビティのオーバーライドにこのテンプレートを使用します

@Override
protected void onActivityResult(int resultCode, int requestCode, Intent data)
{                   
    super.onActivityResult(requestCode, resultCode, data);

    // do your work here
}

";"パラメータから セミコンを削除し、アクティビティクラス内のメソッドonActivityResultもオーバーライドしていることを確認してくださいonActivityResult

于 2012-12-20T12:41:03.183 に答える
0

セミコロン;を使用して引数を区切ったため、メソッドは正しく宣言されていませんが、単にコロンである必要があります,。したがって、次のようになります。

protected void onActivityResult(int resultCode, int requestCode, Intent data)

それ以外の

protected void onActivityResult(int resultCode; int requestCode; Intent data)
于 2012-12-20T12:45:02.407 に答える