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