以下のロジックを使用して、配列 names[] を反復処理し、ボタンのクリック時に別の結果を表示しています。
i = intent.getIntExtra(MainActivity.EXTRA_INDEX, 0);
j = i;
while (i==j)
{
j=j+1;
final TextView nameView = (TextView) findViewById(R.id.vNames);
String vName = names[i];
nameView.setText(vName);
Button nextButton = (Button) findViewById(R.id.nextButton);
nextButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
i=i+1;
return;
};
});
}
私の問題は、新しい値で onClick メソッドから抜け出すことです。コードが onClick 内で動かなくなっています。(コードのさまざまな場所で System.out.println() を使用して何が起こっているかを確認しました。)上記を使用しました
public void onClick(View v) {
i=i+1;
return;
};
メソッドはエラーなしで実行されますが、結果は得られません。私も次のようなことを試しました
public int onClick(View v) {
i=i+1;
return i; //or return int i;
};
しかし、これにより「戻り値の型は View.OnClickListener.onClick(View) と互換性がありません」というエラーが表示されます。
この方法または代替方法に対処する方法についてのアイデアをいただければ幸いです。