如何在cardview中设置来自sdcard的图片
How to set images from sdcard in cardview
我正在尝试为 android 构建应用程序。我在回收站视图中有一个 android 卡片列表。一个例子:
在左侧的标题、专辑和年份附近,我插入了 100dp x 100dp 的图像视图 space。 Xml的结构是这样http://pastebin.com/t3spdaTS
所有信息都在应用程序内的 sqlite 中的一个简单数据库中。我在 /sdcard/my_app_name
中保存了一些图像,其中有一个渐进数字 1.jpg, 2.jpg, ecc...
,其中数字是数据库中的行。现在我如何将这些图像放入每张卡片中?我试过写里面
dbHelper = new DBHelper(getApplicationContext());
Cursor cursor = dbHelper.getDisks();
cursor.moveToFirst();
...
ImageView iv = (Imageview)find
while(!cursor.isAfterLast()){
count++;
String artist = cursor.getString(cursor.getColumnIndex(DBHelper.COL_ARTIST));
...
AlbumCard albumCard = new AlbumCard(0, artist, album, year);
String path = "sdcard/Warehouse_app/" + count + ".jpg";
iv.setImageDrawable(Drawable.createFromPath(path));
list.add(albumCard);
cursor.moveToNext();
}
但是 iv.setImage
给了我一个“空指针异常”。我该如何解决这个问题?谢谢大家。
NullPointerException表示Drawable.createFromPath(path) returns null,路径有问题
你应该这样得到一个sdcard路径
String path = Environment.getExternalStorageDirectory().getAbsolutePath()
+ File.separator + "Warehouse_app"
+ File.separator + count + ".jpg";
那么也许您应该检查此文件是否存在:
File checkIfFileExists = new File(path);
if(File.exist()){
iv.setImageDrawable(Drawable.createFromPath(path));
}
忘记了:您应该在 AndroidManifest 中添加权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
我正在尝试为 android 构建应用程序。我在回收站视图中有一个 android 卡片列表。一个例子:
在左侧的标题、专辑和年份附近,我插入了 100dp x 100dp 的图像视图 space。 Xml的结构是这样http://pastebin.com/t3spdaTS
所有信息都在应用程序内的 sqlite 中的一个简单数据库中。我在 /sdcard/my_app_name
中保存了一些图像,其中有一个渐进数字 1.jpg, 2.jpg, ecc...
,其中数字是数据库中的行。现在我如何将这些图像放入每张卡片中?我试过写里面
dbHelper = new DBHelper(getApplicationContext());
Cursor cursor = dbHelper.getDisks();
cursor.moveToFirst();
...
ImageView iv = (Imageview)find
while(!cursor.isAfterLast()){
count++;
String artist = cursor.getString(cursor.getColumnIndex(DBHelper.COL_ARTIST));
...
AlbumCard albumCard = new AlbumCard(0, artist, album, year);
String path = "sdcard/Warehouse_app/" + count + ".jpg";
iv.setImageDrawable(Drawable.createFromPath(path));
list.add(albumCard);
cursor.moveToNext();
}
但是 iv.setImage
给了我一个“空指针异常”。我该如何解决这个问题?谢谢大家。
NullPointerException表示Drawable.createFromPath(path) returns null,路径有问题
你应该这样得到一个sdcard路径
String path = Environment.getExternalStorageDirectory().getAbsolutePath()
+ File.separator + "Warehouse_app"
+ File.separator + count + ".jpg";
那么也许您应该检查此文件是否存在:
File checkIfFileExists = new File(path);
if(File.exist()){
iv.setImageDrawable(Drawable.createFromPath(path));
}
忘记了:您应该在 AndroidManifest 中添加权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />