分享

java-在答案正确与错误时显示消息

 印度阿三17 2019-11-01

我正在开发基于测验的应用程序.测验包含1个问题和4个多项选择答案.

当用户从4个选项中选择一个选项时,如果显示的是正确答案,则应显示“您的答案正确”之类的内容,否则应显示“您的答案是错误的”以及正确的答案.

并且还有2个按钮(下一个和后一个),一个用于下一个问题,另一个用于后退.

有人可以告诉我如何编写代码以返回上一个问题吗?

我做了这样的事情:

 private void getShuffledArray() 
    {
        // TODO Auto-generated method stub
        for (int i = 1; i <= SIZE; i  ) 
        {
            quizIndexList.add(i);

        }
        Collections.shuffle(quizIndexList);
        Log.d("ERR", "List A shuffling"   quizIndexList);

    }

    public void onClick(View v) {
        // TODO Auto-generated method stub
        switch (v.getId()) {
        case R.id.button1:
            Log.d("ERR", v.getTag().toString());
            if (v.getTag().toString().equalsIgnoreCase("right")) {
                displayAnswer();


            }

            break;
        case R.id.button2:
            Log.d("ERR", v.getTag().toString());
            if (v.getTag().toString().equalsIgnoreCase("right")) {
                displayAnswer();
            }
            break;

        case R.id.button3:
            Log.d("ERR", v.getTag().toString());
            if (v.getTag().toString().equalsIgnoreCase("right")) {
                displayAnswer();
            }
            break;

        case R.id.button4:
            Log.d("ERR", v.getTag().toString());
            if (v.getTag().toString().equalsIgnoreCase("right")) {
                displayAnswer();
            }
            break;

        case R.id.btn_next:
//          lyt_ans.setVisibility(View.GONE);
//          lyt_quest.setVisibility(View.VISIBLE);
            counter  = 1;
            if (counter >= SIZE) {
                Collections.shuffle(quizIndexList);
                counter = 0;
            }
            getInfoFromDB(quizIndexList.get(counter));
            reLoad();
            break;

        case R.id.btn_bck:
             btn_next.setOnClickListener(new OnClickListener() 
               {

                public void onClick(View v) 
                {
                    // TODO Auto-generated method stub

                    finish();
                }
               });

        }

}

任何帮助都是不胜感激的,在此先感谢您.

解决方法:

@Rithesh-没有得到您的代码,但是简单的逻辑如下
你需要什么
1)问题数组
2)回答Arraylist(或说二维数组)之类的ArrayList< ArrayList< String>>.
3)每个问题的答案索引(应与问题索引匹配
4)具有textview(以显示问题)的视图RadioGroup,它包含4个单选按钮,因此一次只能选择一个
5)接下来的两个按钮以前
6)最主要的事情是将setOnCheckedChangeListener添加到您的单选按钮组中,只有当用户选择任何答案然后检查哪个单选按钮被选中时(此单选按钮设置到它的位置),它才会被触发,因此假设问题号为2&.无线电选中的位置是3,然后只需在您的答案数组中检查答案是否&如果匹配,则可以显示吐司&如果不匹配,则从Answers arraylist&找到答案以烤面包或警报方式显示.
7)现在,当您单击下一步按钮时,将文本视图的文本更改为下一个问题&单选按钮的文本到下一组答案&反之亦然,上一个按钮单击

这是无法提供代码的逻辑

代码设置选项

RadioButton option_rdb1 = (RadioButton) findViewById(R.id.option_rdb1);
setOptions(0);

// if you used ArrayList<ArrayList<String>> optionslist
public void setOptions(int index){
if((index-1) <= optionsList.size()){
    ArrayList<String> temp = optionslist.get(index);
    options_rdb1.setText(temp.get(0).toString();
    options_rdb1.setText(temp.get(0).toString();
    options_rdb1.setText(temp.get(0).toString();
    options_rdb1.setText(temp.get(0).toString();
  }
}

只需在下一个带有问题索引的上一个中调用setOptions.
我使用index-1作为以0开头的arraylist,所以这取决于您如何使用index.
这样,您可以设置第一个选项.此外,在您将要调用下一个按钮的函数中,单击上面的代码行以设置下一个

来源:https://www./content-1-541501.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多