现在,我试图为照片上传应用制作一个应用。
今天,我在上传图片后成功重新上传了图片文件。
但是有一个大问题。
问题在这里
1。
2。
3。
这是情况。当我按下按钮重新上传图片时,主活动线程只读取了下一个代码
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, 2);
String title = photolist.get(position).getTv_title();
String content = photolist.get(position).getTv_word();
Uri uri = photolist.get(position).changePhotoUri(change_Uri);
photoInfo dict = new photoInfo(uri, title, content);
photolist.set(position, dict);
myAdpayer.notifyItemChanged(position);
在选择图库图片之前。
因此ImageView
更改了默认图像,例如绿色网格视图(3张图片)。因此,当我再次选择“重新上传”按钮时,活动将移动图库,然后放上“后一页”屏幕按钮,然后ImageView
屏幕会在我之前选择图像时更改图像.....
我该如何解决这个问题?我只想一次更改图库中的图片...
这是代码。
主要活动
btn_upload.setOnClickListener(new View.OnClickListener() {//when push this button i move the gallery to pick a image
//photo upload first
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, 1);
title = edit_photo_title.getText().toString();
content = edit_phto_content.getText().toString();
dialog.dismiss();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case 1: //first image pick
imageUri = data.getData();
photolist.add(new photoInfo(imageUri, "Title : " + title, "Content : " + content));
mRecycler.setAdapter(myAdpayer);
break;
case 2:
try {// reupload the image
change_Uri = data.getData();
} catch (Exception e) {
}
break;
}
}
然后是问题代码,但这也是主要活动 因为我通过使用界面从Adapter带来了按钮。
myAdpayer.setOnItemClickListener(new photoAdapter.OnItemClickListener() {
@Override
public void onItemClick(View v, final int position) {
PopupMenu popupMenu = new PopupMenu(v.getContext(), v);
popupMenu.getMenuInflater().inflate(R.menu.main_menu2, popupMenu.getMenu());
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu3: //reupload button id
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, 2);
String title = photolist.get(position).getTv_title();
String content = photolist.get(position).getTv_word();
Uri uri = photolist.get(position).changePhotoUri(change_Uri);
photoInfo dict = new photoInfo(uri, title, content);
photolist.set(position, dict);
myAdpayer.notifyItemChanged(position);
break;
任何人请帮助我知道解决方案T ^ T ;;;我很抱歉我的英语不好....