android - 当我从图库中选择图像时应用程序如何停止
问题描述
现在,我尝试为照片上传应用程序制作一个应用程序。
今天我上传图片后成功重新上传图片文件。
但是有一个大问题。
问题就在这里
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;
}
}
然后是问题代码,但这里也是主要活动,因为我通过使用接口从适配器带来了按钮。
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;;; 我很抱歉我的英语不好....
解决方案
推荐阅读
- powershell - Powershell Invoke-Command & IISConfigCollection
- c++ - 初始化时正则表达式 C++ 崩溃
- php - 服务器错误5006:供应商未指定redirecturl但已指定url
- android - 三角测量后Android OpenGL UV映射错误
- corda - 如何对过滤后的交易进行合约验证?
- javascript - SAPui5 创建简单的 sap.m.ComboBox
- python - Tensorflow:NotImplementedError:reduce() 转换当前不支持嵌套数据集作为输入
- c++ - 在 C++ 中同步线程
- javascript - 如何在不留空格的情况下在同一行打印字符串?
- ios - 立即使用 UIPickerView 选项填充 UITextField