我的图像位于内部存储中的myImageFactory文件夹下。现在我需要获取文件夹的路径,然后将其设置为imageviwer。我不能通过使用getFilesDir()bez我的图像不在文件文件夹中。现在我如何获取文件路径并分配给imageviwers setimageurl()。有什么方法可以将“路径”转换为Uri。我已经附加了下面的文件探索结构链接。
public class GalleryImageAdapter extends BaseAdapter {
ContextWrapper cw = new ContextWrapper(getApplicationContext());
File path = cw.getDir("myImageFactory", Context.MODE_WORLD_READABLE);
Uri[] picture={
//How to get the path and store it here
};
@Override
public int getCount() {
return picture.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ImageView i = new ImageView(context);
i.setImageURI(uri+ "/myimage.png");
i.setLayoutParams(new Gallery.LayoutParams(200, 200));
i.setScaleType(ImageView.ScaleType.FIT_XY);
return i;
}
}
}
}
答案 0 :(得分:0)
在文件路径之前添加file:/// ..
并确保您在清单
中拥有这些权限<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
或
File file = new File ("yourpath");
ImageView imageView = (ImageView) findViewById(R.id.imagview);
imageView.setImageURI(Uri.fromFile(file));
答案 1 :(得分:0)
如果你想在Android应用程序中使用图像,你必须将它们全部放入你的'res'文件夹内的任何一个可绘制文件夹(例如: - res / drawable-hdpi)文件夹中。然后你可以通过这种方式访问它们:
imageView.setImageResource(R.drawable.myimage);
或
String drawableName = "myimage";///provide the image's name alone excluding its extension
imageView.setImageResource(getResId(drawableName));
在命名图像文件时,请遵循java变量命名约定。
其他方法是 1.使用'assets'文件夹和AssetsManager 2.使用'res / raw'文件夹。 有关详细信息,请访问以下链接
http://developer.android.com/guide/topics/resources/providing-resources.html