有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在Android中向数据库添加图像

我正在安卓 studio中做一个测验项目,我希望每个问题都有一个特定的图像。这个小测验是为了帮助孩子们学习西班牙语,所以如果他们的问题是如何用西班牙语说猫,就会有一个猫的图像

目前,它创建了一个包含选项、问题和答案的SQL表

String sql = "CREATE TABLE IF NOT EXISTS " + TABLE_QUEST + " ( "
                + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + KEY_QUES
                + " TEXT, " + KEY_ANSWER + " TEXT, " + KEY_OPTA + " TEXT, "
                + KEY_OPTB + " TEXT, " + KEY_OPTC + " TEXT, " + KEY_OPTD + " TEXT)";

以问题1为例,如下所示(以加法q为例):

   private void addQuestion() {
       Question q1 = new Question("5+2 = ?", "7", "8", "6", "5", "7");
       this.addQuestion(q1); 
   }

我该如何添加一个特定的图像,也就是说,在这种情况下,我可能希望选择一个猫的图像,在下一个问题中,我可能希望图像是一只狗

private static final String KEY_OPTD = "optd"; //option d

我尝试使用这种格式(与问题相同),除了图像而不是字符串,但这会导致问题

如果您能给我一些建议,我将不胜感激


共 (1) 个答案

  1. # 1 楼答案

    使用Andrid Assets Studio生成不同屏幕分辨率的图像。 在res/drawable文件夹中添加数千张图像。然后在问题类和SQL表中创建一个名为mImageId的int属性。构造函数可能如下所示:

    Question q1 = new Question("5+2 = ?", "7", "8", "6", "5", "7", R.drawable.cat);
    

    我希望你能做得更好,但无论如何

    您应该在XMLUI组件中创建一个ImageView,以便将图像放入其中

    在java类中,加载测验问题的人可以使用:

    ImageView image = (ImageView) findViewById(R.id.<your ImageView id>)
    image.setImageResource(q1.getImageId());