从Sqlite获取文本并从drawable文件夹中显示图像

时间:2016-04-13 05:24:45

标签: android sqlite

我在listview名称和文本中获取所有数据时创建了一些应用程序,我想从drawable文件夹中显示图像,但我的问题是: 如何识别来自SQLite的文本'name'和来自drawable的Exactly图像? 如果没有相同'name'的可用图像,它也必须是blank.png来自drawable图像,我想要它当我点击一些listview它会转到下一个活动来查看详细文本并从listview描述 Example

  • 左边的一个是从SQLite中获取列表(使用sqliteman导入sqlite)
  • 右边是我点击列表中的1并显示详细信息
  • 来自SQLite的所有字符串和来自drawable文件夹的所有图像

3 个答案:

答案 0 :(得分:1)

用于显示可绘制文件夹中的图像 - >

ImageView imageView = (ImageView) findViewById(R.id.image);
imageView.setImageResource(R.drawable.image_name);

列表视图项目单击以移动另一个活动 - >

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        Intent intent = new Intent(Context,ToActivoty.class);
        intent.putExtra("key",value); // If you want to pass any data to next activity
        startActivity(intent);
    }
});

答案 1 :(得分:0)

首先,您要制作所有文本的arraylist并按字母顺序对文本进行排序,同样地,您必须将Drawable资源ID添加到另一个arraylist 然后,对于每个文本索引,您必须获取资源名称并将其与文本匹配。

getResources().getResourceEntryName(int resid);

getResources().getResourceName(int resid);

如果匹配设置图像,如果不匹配则可以使用空白图像。

答案 2 :(得分:0)

当您为可绘制字段创建Table使用整数而不是文本时,使用insert和get as normal只需使用int而不是string

public long insertDrawable(String listviewId,int drawable) 
{
    ContentValues initialValues = new ContentValues();
    initialValues.put("id", listviewId);
    initialValues.put("drawable_res", drawable);
    return db.insert(DATABASE_TABLE, null, initialValues);
}

其中id和drawable_res是表的字段名,id是字符串,在Integer中是drawable_res,你可以用它来将整数插入到数据库表中