直接在活动中更改图像

时间:2016-01-27 00:35:32

标签: java android

我想创建一个测验应用。有没有办法当用户正确回答问题并点击"检查"按钮,我不需要创建另一个活动,只需更改图像并在一个活动中回答?我在很多网站上搜索过,但我没有找到答案。

我质疑这是因为我不想创建约130项活动,因为这在规模方面会非常大。

编辑:我的代码有更好的解释:

ImageView image = (ImageView)findViewById(R.id.img);
        Drawable myDrawable = ResourcesCompat.getDrawable(getResources(), R.drawable.img1, null);
        image.setTag("img1");

        if (answer.equals("test1") && image.getTag() == "img1"){
            Toast.makeText(MainActivity.this, "Correct answer!", Toast.LENGTH_LONG).show();
            myDrawable = ResourcesCompat.getDrawable(getResources(), R.drawable.img2, null);
        } else {
            Toast.makeText(MainActivity.this, "Wrong answer!", Toast.LENGTH_LONG).show();
        }

        image.setTag("img2");

        if (answer.equals("test2") && image.getTag() == "img2"){
            Toast.makeText(MainActivity.this, "Correct answer!", Toast.LENGTH_LONG).show();
        } else {
            Toast.makeText(MainActivity.this, "Wrong answer!", Toast.LENGTH_LONG).show();
        }

        image.setImageDrawable(myDrawable);

2 个答案:

答案 0 :(得分:1)

要更改textview的答案:

textview.setText("ANSWER")

要更改图像:

img.setImageResource(R.drawable.my_image);

img是您对图片的看法。如果这有帮助,请在评论中告诉我。

答案 1 :(得分:1)

我建议你使用Single Activity和Single Fragment来实现这个逻辑。通过这种方式,您可以通过向其传递问题号来实例化您的片段,以便相应地显示问题和选项。 在正确答案的情况下,您只需要用新实例化的片段替换片段。这样您就可以很好地控制评估答案和UI的逻辑

有关片段的更多信息,请阅读here