android - 我想显示四个随机数最少一个最多十个但包含一个数字修复

标签 android

我想显示 4 个数字选项,就像测验选项一样,四个中的三个应该是错误的,一个应该是正确的答案。所有选项都是数字,每次打开页面时我都想更改正确答案的位置。请帮助我

我的结果是一个字符串结果,我将在其中添加结果.....

我正在尝试这个,但没有得到解决方案

LinearLayout rowoptions = (LinearLayout) findViewById(R.id.linearlayout);
ArrayList<Integer> numbers = new ArrayList<Integer>();
String[] s = new String[4];
while (numbers.size() < 4) {
    int random = r.nextInt(10)+1;
    int chk = r.nextInt(4)+1;
    if (!numbers.contains(random)) {
        numbers.add(random);
        s[chk] =String.valueOf(random);
    }
}

for (int i = 0; i < 4; i++) {
    Button optionbutton = new Button(this);
    optionbutton.setText(s[i]);
    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(70, 70);
    layoutParams.setMargins(5, 5, 0, 0); // left, top, right, bottom
    optionbutton.setLayoutParams(layoutParams);
    //ivBowl.setBackgroundDrawable(null);

    rowoptions.addView(optionbutton);
}

最佳答案

你好,你需要这样的东西吗

LinearLayout layout=(LinearLayout)findViewById(R.id.mainlayout);
ArrayList list=new ArrayList();
    list.add(answer);
    Random r=new Random();
    for(int i=0;i<3;i++)
    {
        while(true)
        {
            int next=r.nextInt(10)+1;
            if(!list.contains(next))
            {
            list.add(next);
            break;
            }
        }
    }
    Collections.shuffle(list);
    for(int i=0;i<list.size();i++)
    {
        final Button b=new Button(this);
        b.setText(list.get(i).toString());

        b.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                int selectedAnser=Integer.parseInt(b.getText().toString());
                if(!(selectedAnser==answer))
                {
                    Toast.makeText(context, "Wrong Answer", Toast.LENGTH_SHORT).show();
                }

            }
        });
        layout.addView(b);
    }

关于android - 我想显示四个随机数最少一个最多十个但包含一个数字修复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15038254/

相关文章:

java - Android将CSV导入SQLite而不是第一行

android - 如何在控制台中使用 flutter 热重载?

android - 无法在 Android 库文件中找到类

android - 我如何允许用户浏览/选择一个文件供我在 Android 中使用的应用程序使用?

java - 维塔米奥服务

javascript - WebView SpeedTest 结果始终低于 CustomTab 或 Chrome

android - 如何计算字符串中的符号并相应地拆分并在 Textview 中设置?

android - 如何让我的应用成为系统应用?

android - 谷歌地图 android 的 LocationSource

android - 如何在 Android 中设置 EditText 的最小和最大字符数限制?