我想将sdcard
的图片添加到listview
。目前,我可以通过按下sdcard
上的按钮从我的UI
中选择图片。选择图片的实现是:
sendPicture.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mybyte=null;
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Picture"),1);
}
});
此实施的onActivityResult
是:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == 1) {
currImageURI = data.getData();
myvariable=getRealPathFromURI(currImageURI);
try {
mybyte=fileToByteArray(myvariable);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
我的目标是将“mybyte”(一个byte[]
变量)转换为图片并将图片放在listview
上。
感谢任何帮助。
答案 0 :(得分:0)
通过这样的实现,将byte []转换为Bitmap并将Bitmaps存储在适配器源列表中,您将收到OutOfMemmory错误。最好存储在ArrayList而不是Bitmap中,但是它的路径,你从galery选择位图后从光标获取它,并在CustomAdapter的getView方法中的AsyncTask中加载Bitmap.Google有一个很好的例子说明如何用ImageViews HERE
做一个奇特的ListView