java - 如何获取一个 Activity 发送的结果?
问题描述
我正在发送结果请求,onActivityresult ()
但未在同一活动中接收结果。
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Uri myUri = Uri.parse("");
if(resultCode==RESULT_OK && requestCode==PHOTO){
List<String> mSelected = Matisse.obtainPathResult(data);
Uri original = Uri.fromFile(new File(mSelected.get(0)));
UCrop.of(original, myUri)
.withAspectRatio(16, 9).start(Settings.this);
}
if(resultCode==RESULT_OK && requestCode==UCrop.REQUEST_CROP){
Log.e("Got", "here");
Uri resultData = UCrop.getOutput(data);
File file = new File (resultData.getPath ());
File Compressed=null;
try {
Compressed = new ImageZipper(getApplicationContext()).setQuality (75).setMaxWidth (640).setMaxHeight (480).setCompressFormat (Bitmap.CompressFormat.PNG).compressToFile (file);
} catch (IOException e) {
Toast.makeText (getApplicationContext(), "Error 407: " + e.getMessage (), Toast.LENGTH_SHORT).show ();
}
Uri UploadUri = Uri.fromFile (Compressed);
EditProfile.ImageUri = UploadUri;
userProfile.setImageURI(UploadUri);
EditProfile.isImageUpdated = true;
}
}`
我在 requestCrop 结果中添加了这个,但它没有显示在 LogCat 中。当我成功完成裁剪时Log.e("Got", "here");
解决方案
为 Activity Restult 发送数据
Intent intent = new Intent(context, Activity.class);
startActivityForResult(intent, ACTIVITY_RESULT_CODE);
您将收到有关活动结果的发送数据
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (data != null) {
switch (requestCode) {
case ACTIVITY_RESULT_CODE:
// You will get your Sent data here...
break;
}
}
推荐阅读
- log4j2 - 我可以将 Log Analytics 与 log4j2 集成吗?
- reactjs - NextJS Apollo“queryData.ssrInitiated is not a function”路由错误
- python - 如何将两个python表合并为一个只显示公共表的表
- node.js - 如何在 Node Mongo DB mongoose Express App 中同时创建文档和子文档
- c++ - 为什么对 std::map::operator[] 的调用不能编译为没有默认构造函数的值类型?
- azure-logic-apps - Azure Logic App:检查属性是否存在于 json 对象中
- python - selenium.common.exceptions.SessionNotCreatedException:消息:会话未创建:此版本的 ChromeDriver 仅支持 Chrome 版本 85
- c - 为什么 Valgrind 说条件跳转或移动取决于静态数组的未初始化值?
- python - 计算 200 万以下的所有素数之和
- c# - wpf中的以下代码等效于什么?