我正在尝试使用图库中的图像(单击时)更新列表视图中的图像按钮。目前我能够以媒体商店的意图启动ActivityForResult,画廊打开,当我选择图像时,我在onActivityResult中获得图像路径。
我的问题是如何更新该特定列表项(图像按钮)上的图像?我正在使用 Customadapter 扩展基本适配器,图像按钮的 onClickListener 位于适配器中,而 onActivityResult 位于主机活动中(此方法不知道单击了哪个列表项)。
我放入我的一些代码片段只是为了获得一些观点。
/*
* Image button click listener for in the Custom adapter
*/
private class ImageOnClickListener implements OnClickListener {
@Override
public void onClick(View view) {
Intent imageIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
imageIntent.setType("image/*");
((FragmentActivity)view.getContext()).startActivityForResult(imageIntent, IMAGE_PICK_CODE);
}
}
/* onActivityResult PRESENT IN HOST ACTIVITY*/
/* On activity result from image button */
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
System.out.println("Result Code" + resultCode);
if(requestCode == FavoriteListAdapter.IMAGE_PICK_CODE && data != null && data.getData() != null && resultCode == FragmentActivity.RESULT_OK) {
Uri _uri = data.getData();
//User had pick an image.
Cursor cursor = getContentResolver().query(_uri, new String[] { android.provider.MediaStore.Images.ImageColumns.DATA }, null, null, null);
cursor.moveToFirst();
//Link to the image
String imageFilePath = cursor.getString(0);
System.out.println("imagefilepath" + imageFilePath);
cursor.close();
}
}
注意:我能够获取图像路径(因此代码正在运行,我只是不知道如何更新该列表项中的特定图像按钮)。非常感谢您的帮助。