0

簡単なカウンターを作成し、別のアクティビティに進むボタンを追加したいのですが、これが得られたものです:

//counter starts
@Override
public void onClick(View v) {
    if (v == btn1){
        counter++;
        scoreText.setText(Integer.toString(counter));
        scoreText.setBackgroundColor(Color.CYAN);
    }
    if (v == btn2){
        counter--;
        scoreText.setText(Integer.toString(counter));
        scoreText.setBackgroundColor(Color.GREEN);
    }

    if (v == btn3){
        counter = 0;
        scoreText.setText(Integer.toString(counter));
        scoreText.setBackgroundColor(Color.RED);
    }
    //There the counter ends
        next.setOnClickListener(new OnClickListener() { 
            @Override
            public void onClick(View v) {
        Intent intent = new Intent(SecondAcitivity.this, Aktivity.class);
        startActivity(intent);
    }});
    }}

タグの後に、//There the counter ends別のアクティビティに進むボタン「NEXT」に OnClickListener を設定し、「Aktivity」というアクティビティをもたらすインテントを作成しました。しかし、ボタンを押しても何も起こりません。半分

4

3 に答える 3

0

このコードをカットして onCreate() メソッドに貼り付けます

next.setOnClickListener(new OnClickListener() { 
            @Override
            public void onClick(View v) {
        Intent intent = new Intent(SecondAcitivity.this, Aktivity.class);
        startActivity(intent);
    }});

onClick() メソッド内のオブジェクトにクリック リスナーを設定することはできません。

于 2013-10-29T15:55:41.713 に答える
0

への変更

@Override
public void onClick(View v) {

switch(v.getId())
{
case R.id.btn1: // btn1 clicked
        counter++;
        scoreText.setText(Integer.toString(counter));
        scoreText.setBackgroundColor(Color.CYAN);
break;
case R.id.btn2: // btn2 clicked
        counter--;
        scoreText.setText(Integer.toString(counter));
        scoreText.setBackgroundColor(Color.GREEN);
break;
case R.id.btn1: // btn3 clicked
        counter=0;
        scoreText.setText(Integer.toString(counter));
        scoreText.setBackgroundColor(Color.RED);
break;
case R.id.next: // assuming button next id is next. btn next clicked
          Intent intent = new Intent(SecondAcitivity.this, Aktivity.class);
          startActivity(intent);
break;
}
}

次にonCreateで

next.setOnClickListener(this); // similarly fro other buttons

Ansアクティビティが実装されていることを確認してくださいOnClickListener

代わりにswitch caseを使用できますif else

于 2013-10-29T16:09:00.050 に答える