android问答更改sqlite数据库

android问答更改sqlite数据库,android,sqlite,Android,Sqlite,我正在做另一个基于开发人员提要中找到的模板的android测试。该应用程序运行良好,我已经为自己的变量对其进行了修改,但在我将自己的5个问题和答案输入代码后,当我运行该应用程序时,它仍然使用有关ruby等的默认问题。是否仍有必要对此进行更改,并保留代码体的大部分其余部分,包括评级栏和增量?代码在类的下面 package com.example.triviality; /** * Created by Rory McAteer on 02/05/2014.

我正在做另一个基于开发人员提要中找到的模板的android测试。该应用程序运行良好,我已经为自己的变量对其进行了修改,但在我将自己的5个问题和答案输入代码后,当我运行该应用程序时,它仍然使用有关ruby等的默认问题。是否仍有必要对此进行更改,并保留代码体的大部分其余部分,包括评级栏和增量?代码在类的下面

     package com.example.triviality;

    /**
     * Created by Rory McAteer on 02/05/2014.
     */

    import java.util.List;

    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Intent;
    import android.util.Log;
    import android.view.Menu;
    import android.view.View;
    import android.widget.Button;
    import android.widget.RadioButton;
    import android.widget.RadioGroup;
    import android.widget.TextView;
    //imports of widgets, list and button options

    public class QuizActivity extends Activity {
        List<Question> quesList;
        int result = 0;
        int questionNo = 0;
        Question currentQuestion;
        TextView textQuestion;
        RadioButton rda, rdb, rdc;
        Button nextButton;

        //variables and button delcarations
        @Override

        //method to initialise clicker and button ids
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_quiz);
            DbHelper db = new DbHelper(this);
            quesList = db.getAllQuestions();
            currentQuestion = quesList.get(questionNo);
            textQuestion = (TextView) findViewById(R.id.textView1);
            rda = (RadioButton) findViewById(R.id.radio0);
            rdb = (RadioButton) findViewById(R.id.radio1);
            rdc = (RadioButton) findViewById(R.id.radio2);
            nextButton = (Button) findViewById(R.id.button1);
            setQuestionView();
            nextButton.setOnClickListener(new View.OnClickListener() {
                @Override

                public void onClick(View v) {
                    RadioGroup grp = (RadioGroup) findViewById(R.id.radioGroup1);
                    RadioButton answer = (RadioButton) findViewById(grp.getCheckedRadioButtonId());
                    Log.d("yourans", currentQuestion.getANSWER() + " " + answer.getText());
                    if (currentQuestion.getANSWER().equals(answer.getText())) {
                        result++;
                        Log.d("score", "Your score" + result);
                    }//if statements to find scores.
                    if (questionNo < 5) {
                        currentQuestion = quesList.get(questionNo);
                        setQuestionView();
                    } else {
                        Intent intent = new Intent(QuizActivity.this, ResultActivity.class);
                        Bundle b = new Bundle();
                        b.putInt("score", result);
                        intent.putExtras(b);
                        startActivity(intent);
                        finish();
                    }//end of if/else to find user score
                }
            });
        }

        @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_quiz, menu);
            return true;
        }

        private void setQuestionView() {
            textQuestion.setText(currentQuestion.getQUESTION());
            rda.setText(currentQuestion.getOPTA());
            rdb.setText(currentQuestion.getOPTB());
            rdc.setText(currentQuestion.getOPTC());
            questionNo++;
        }//increment of question numbers
    }//class

package com.example.triviality;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.RatingBar;
import android.widget.TextView;
//imports list

    /**
     * Created by Rory McAteer on 02/05/2014.
     */

    public class ResultActivity extends Activity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_result);

            RatingBar bar = (RatingBar) findViewById(R.id.ratingBar1);
            bar.setNumStars(5);
            bar.setStepSize(0.5f);
            //get ratingBar object
            TextView t = (TextView) findViewById(R.id.textResult);
            //getTextView
            Bundle b = getIntent().getExtras();
            int score = b.getInt("score");
            //Get and display score
            bar.setRating(score);
            switch (score) {
                case 1:
                case 2:
                    t.setText("You need to visit more festivals!");
                    break;
                case 3:
                case 4:
                    t.setText("Good effort, could do better...");
                    break;
                case 5:
                    t.setText("You know your music, O Wise One!!!");
                    break;
            }//break/case for score options
        }//rating depending on score

        @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_result, menu);
            return true;
        }//createOptionsMenu
    }//class

package com.example.triviality;

import java.util.ArrayList;
import java.util.List;
//array list imports

/**
 * Created by Rory McAteer on 02/05/2014.
 */

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
//import of mini database through sqlite
public class DbHelper extends SQLiteOpenHelper {
    private static final int DATABASE_VERSION = 1;
    //Database Name
    private static final String DATABASE_NAME = "triviaQuiz";
    //tasks table name
    private static final String TABLE_QUEST = "quest";
    //Column names
    private static final String KEY_ID = "id";
    private static final String KEY_QUESTION = "question";
    private static final String KEY_ANSWER = "answer"; //correct option
    private static final String KEY_OPTIONA = "A"; //option a
    private static final String KEY_OPTIONB = "B"; //option b
    private static final String KEY_OPTIONC = "C"; //option c
    private SQLiteDatabase dbase;
    //declaration of options and database

    public DbHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        dbase = db;
        String sql = "CREATE TABLE IF NOT EXISTS " + TABLE_QUEST + " ( "
                + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + KEY_QUESTION
                + " TEXT, " + KEY_ANSWER + " TEXT, " + KEY_OPTIONA + " TEXT, "
                + KEY_OPTIONB + " TEXT," + KEY_OPTIONC + " TEXT)";
        db.execSQL(sql);
        addQuestions();
        //creation of database questions
    }

    private void addQuestions() {
        Question q1 = new Question("\"Which year did the Isle of Wight festival begin?, 1968", "1967", "1997", "1970", "1968");
        this.addQuestion(q1);
        Question q2 = new Question("When was the festival revived?, 1995", "2002", "2006", "1998", "2002");
        this.addQuestion(q2);
        Question q3 = new Question("How many people can the festival hold?, 100,000", "60,000", "50,000", "75,000", "60,000");
        this.addQuestion(q3);
        Question q4 = new Question("How much is an adult ticket with camping?, £165", "£180", "£190", "£200", "£190");
        this.addQuestion(q4);
        Question q5 = new Question("Who are headline acts on Friday?, The Kings of Leon and Culture Club", "Biffy Clyro and Calvin Harris", "Madonna and LMFAO", "Red Hot Chilli Peppers and Beyonce", "Biffy Clyro and Calvin Harris");
        this.addQuestion(q5);
        //Questions and Answer choices with correct answer stored at the end. 5 questions in total.


    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldV, int newV) {
        // Drop older table if existed
        db.execSQL("DROP TABLE IF EXISTS " + TABLE_QUEST);
        // Create table again
        onCreate(db);
    }


    public void addQuestion(Question quest) {

        ContentValues values = new ContentValues();
        values.put(KEY_ID, quest.getQUESTION());
        values.put(KEY_QUESTION, quest.getQUESTION());
        values.put(KEY_ANSWER, quest.getANSWER());
        values.put(KEY_OPTIONA, quest.getOPTA());
        values.put(KEY_OPTIONB, quest.getOPTB());
        values.put(KEY_OPTIONC, quest.getOPTC());
        // Inserting Row
        //creation of new database
        dbase.insert(TABLE_QUEST, null, values);
    }

    public List<Question> getAllQuestions() {
        List<Question> quesList = new ArrayList<Question>();
        //array list
        String selectQuery = "SELECT  * FROM " + TABLE_QUEST;
        dbase = this.getReadableDatabase();
        Cursor cursor = dbase.rawQuery(selectQuery, null);

        if (cursor.moveToFirst()) {
            do {
                Question quest = new Question();
                quest.setID(cursor.getInt(0));
                quest.setQUESTION(cursor.getString(1));
                quest.setANSWER(cursor.getString(2));
                quest.setOPTA(cursor.getString(3));
                quest.setOPTB(cursor.getString(4));
                quest.setOPTC(cursor.getString(5));
                quesList.add(quest);
            } while (cursor.moveToNext());
        }//loops of array and list additions.
        // return quest list
        return quesList;
    }

    public int rowcount() {
        int row = 0;
        String selectQuery = "SELECT  * FROM " + TABLE_QUEST;
        SQLiteDatabase db = this.getWritableDatabase();
        Cursor cursor = db.rawQuery(selectQuery, null);
        row = cursor.getCount();
        return row;
    }//row count
}//class


package com.example.triviality;

/**
 * Created by Rory McAteer on 02/05/2014.
 */

public class Question {
    private int ID;
    private String question;
    private String optionA;
    private String optionB;
    private String optionC;
    private String answer;

    public Question() {
        ID = 0;
        question = "";
        optionA = "";
        optionB = "";
        optionC = "";
        answer = "";
    }//declaration of variables

    public Question(String pQuestion, String pPta, String pPtb, String pPtc,
                    String pAnswer) {

        question = pQuestion;
        optionA = pPta;
        optionB = pPtb;
        optionC = pPtc;
        answer = pAnswer;
    }//declaration of parameters

    public int getID() {
        return ID;
    }//getID method

    public String getQUESTION() {
        return question;
    }//getQuestion method

    public String getOPTA() {
        return optionA;
    }//getoptionA method

    public String getOPTB() {
        return optionB;
    }//getoptionB method

    public String getOPTC() {
        return optionC;
    }//getoptionC method

    public String getANSWER() {
        return answer;
    }//getanswer method


    public void setQUESTION(String pQUESTION) {
        question = pQUESTION;
    }//setQuestion method

    public void setOPTA(String oPTA) {
        optionA = oPTA;
    }//setOptionA method

    public void setOPTB(String oPTB) {
        optionB = oPTB;
    }//setOptionB method

    public void setOPTC(String oPTC) {
        optionC = oPTC;
    }//set OptionC method


    public void setANSWER(String aNSWER) {
        answer = aNSWER;
    }//setAnswer method

    public void setID(int id) {
        id =ID;
    }//setOptionA method

}//class
package com.example.litarity;
/**
*由Rory McAteer于2014年5月2日创建。
*/
导入java.util.List;
导入android.os.Bundle;
导入android.app.Activity;
导入android.content.Intent;
导入android.util.Log;
导入android.view.Menu;
导入android.view.view;
导入android.widget.Button;
导入android.widget.RadioButton;
导入android.widget.RadioGroup;
导入android.widget.TextView;
//小部件、列表和按钮选项的导入
公共类quizaActivity扩展了活动{
清单问题清单;
int结果=0;
int-no=0;
问题-当前问题;
文本视图文本问题;
单选按钮rda、rdb、rdc;
按钮下一个按钮;
//变量和按钮增量
@凌驾
//初始化clicker和button ID的方法
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u测验);
DbHelper db=新的DbHelper(this);
quesList=db.getAllQuestions();
currentQuestion=quesList.get(问题编号);
textQuestion=(TextView)findViewById(R.id.textView1);
rda=(RadioButton)findViewById(R.id.radio0);
rdb=(RadioButton)findViewById(R.id.radio1);
rdc=(RadioButton)findViewById(R.id.radio2);
nextButton=(按钮)findViewById(R.id.button1);
setQuestionView();
setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
放射组grp=(放射组)findViewById(R.id.RadioGroup 1);
RadioButton answer=(RadioButton)findViewById(grp.getCheckedRadioButtonId());
Log.d(“yourans”,currentQuestion.getANSWER()+“”+answer.getText());
if(currentQuestion.getANSWER().equals(answer.getText())){
结果++;
Log.d(“分数”、“你的分数”+结果);
}//如果语句找到分数。
如果(问题编号<5){
currentQuestion=quesList.get(问题编号);
setQuestionView();
}否则{
意向意向=新意向(QuizActivity.this、ResultActivity.class);
Bundle b=新Bundle();
b、 putInt(“分数”,结果);
意向.附加条款(b);
星触觉(意向);
完成();
}//结束if/else以查找用户分数
}
});
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.activity\u测验,菜单);
返回true;
}
私有void setQuestionView(){
textQuestion.setText(currentQuestion.getQUESTION());
setText(currentQuestion.getOPTA());
setText(currentQuestion.getOPTB());
setText(currentQuestion.getOPTC());
问题号++;
}//问题数增量
}//阶级
包com.example.litority;
导入android.os.Bundle;
导入android.app.Activity;
导入android.view.Menu;
导入android.widget.RatingBar;
导入android.widget.TextView;
//进口清单
/**
*由Rory McAteer于2014年5月2日创建。
*/
公共类结果性扩展活动{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u结果);
RatingBar=(RatingBar)findViewById(R.id.ratingBar1);
巴.塞努姆斯塔斯(5);
钢筋尺寸(0.5f);
//获取ratingBar对象
TextView t=(TextView)findViewById(R.id.textResult);
//getTextView
Bundle b=getIntent().getExtras();
整数分数=b.getInt(“分数”);
//获取并显示分数
杆设置(分数);
转换(分数){
案例1:
案例2:
t、 setText(“你需要参观更多的节日!”);
打破
案例3:
案例4:
t、 setText(“努力,可以做得更好…”);
打破
案例5:
t、 setText(“智慧的人啊,你知道你的音乐!!!”);
打破
}//分数选项的中断/案例
}//评分取决于分数
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.activity\u结果,菜单);
返回true;
}//创建选项菜单
}//阶级
包com.example.litority;
导入java.util.ArrayList;
导入java.util.List;
//数组列表导入
/**
*由Rory McAteer于2014年5月2日创建。
*/
导入android.content.ContentValues;
导入android.content.Context;
导入android.database.Cursor;
导入android.database.sqlite.SQLiteDatabase;
导入android.database.sqlite.SQLiteOpenHelper;
//通过sqlite导入迷你数据库
普布利