0

Eclipse で非常に基本的なクイズ アプリを作成しています。現在、質問は 1 つだけです。私がやりたいことは、最初の質問に答えた後に新しい質問を表示し、必要なだけ質問を追加できるようにすることです。できれば、1 つの質問に答えてから X 秒後に次の質問が表示されるようにしたいのですが、これがどれほど難しいか分からないので、何でも構いません。さらに質問を追加できるようにするために何をすべきかについて誰かが私を正しい方向に向けることができれば、本当に感謝しています. 私がこれまでに持っているものは次のとおりです。

package com.example.quizuke3;

import android.os.Bundle;
import android.os.Vibrator;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity implements OnClickListener{

    Button button1;
    Button button2;
    Button button3;
    int score =0;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button1 = (Button) findViewById(R.id.option1);
        button2 = (Button) findViewById(R.id.option2);
        button3 = (Button) findViewById(R.id.option3);

        button1.setOnClickListener(this);
        button2.setOnClickListener(this);
        button3.setOnClickListener(this);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

    @Override
    public void onClick(View v) {
        TextView result = (TextView) findViewById(R.id.result);

        if(button1.equals(v)){
            score ++;
            result.setText("Correct! Score: "+score);
        }

        else if(button2.equals(v)){
            result.setText("Wrong! Score: "+score);
        }

        else if(button3.equals(v)){
            result.setText("Wrong! Score: "+poeng);
        }

    }

}
4

1 に答える 1

1

これを行うには、 を使用して、ボタンとテキスト ビューのテキストを変更しますsetText(String s)。上で行ったことを冗談で繰り返し行うと、役に立つクイズができますが、コードは実際には保守性が低く、読みやすくもありません。やりたいことは、クイズをさまざまな方法に分割することです。1 つはテキストをボタンに設定する方法で、もう 1 つはユーザーのクリックを処理する方法です。次に、2 つの間で繰り返し呼び出します。あまり明確ではないため、質問がある場合は質問してください。

于 2013-01-18T22:16:08.363 に答える