问题标签 [registerforactivityresult]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 使用活动结果 API 从存储中仅选择文档类型
我需要让用户能够使用新的Activity Result API从手机存储中仅选择文档类型(例如:pdf、docs、xls) ,但问题是当我像下面的代码一样启动合同时
用户可以选择任何文件类型,包括图像、视频、...
android - 使用 registerForActivityResult 启动另一个活动时,Android 应用程序退出
我有 2 个类 MainActivity 和 EditActivity。我尝试在 MainActivity 中使用 registerForActivityResult() 启动 EditActivity,但应用程序立即退出;startActivity() 工作正常,但 registerForActivityResult() 符合我的目的,即将结果返回给 MainActivity。启动 EditActivity 的函数如下。
MainActivity.kt
更新:错误是
java - 无法使用 registerForActivityResult 拍照
我想用 registerForActivityResult 拍照。每当我拍照并点击确认按钮时,结果代码始终为 0。这是我的代码:
清单.xml
我怎么解决这个问题?
java - 未知方法 registerForActivityResult
我正在尝试请求权限,它抛出了一个未知的方法registerForActivityResult,起初我使用的是常规的 android.app.Activity,因为目前由于缺少 PC,我一直在使用 AIDE,而且我有以前的问题,但我AppCompatActivity注意到该registerForActivityResult()方法属于ActivityResultCaller哪个不是由 Activity 实现但由无法让它工作,我也尝试只实现,但随后该错误消失并且一切正常,但随后它说我没有实现抽象方法AppCompatActivityAppCompatActivityActivityResultCallerregisterForActivityResult,我现在没有红线或错误,所以我回到不实现它并试图让它与 plain 一起工作 appcompatactivity,因为在我看到的所有教程中,他们不必说明MainActivity实现ActivityResultCaller,所以我在依赖项上搞砸了,在这一点上我真的不记得我所做的一切,所以我现在可能有一些没有必要,我已经删除了大部分代码让它更简单,但这是我现在的位置,有什么建议吗?
这是 build.gradle 文件
android - 在android 11中从uri创建文件-getPath()不起作用
我想在 android 11 的 ActivityResultCallback 中从 uri 创建一个文件。我uri.getPath()用来将传入的 uri 转换为文件。但是,它在 android 11 中不起作用。这是我的代码:
那么,如何在 android 11 中从 uri 创建文件?
android - 自定义 ActivityResultContracts.TakePicture() 的回调以获取传递的 uri
以下是我声明的从支持 Android 11 版本的应用程序捕获图像的方法。我想自定义回调以获取输入 uri,而不仅仅是获取布尔状态。
截至目前,以下是工作正常的方法。
我只想自定义onTakePictureResult的方法。这样我也可以在回调中获取传递的 imageUri)
注意:因为我不想为此创建一个单独的变量。我想知道这可能吗?
在此先感谢您的帮助 :)
android-intent - ActivityResultLauncher 总是返回空数据
我在 android 11 中使用ActivityResultLauncherwith ActivityResultContracts.StartIntentSenderForResultcontract 来修改音频文件。
这是我在我的MainActivity:
我
MediaStore用来创建一个返回 a 的写请求PendingIntent,然后我调用#getIntentSender()以获取IntentSender:IntentSender sender = MediaStore.createWriteRequest(getContentResolver(), uris).getIntentSender();然后我创建一个
IntentSenderRequest并设置它的填充Intent,如下所示:Intent fillIn = new Intent().putExtras(bundle);IntentSenderRequest senderRequest = new IntentSenderRequest.Builder(sender).setFillInIntent(fillIn).build();然后我像下面这样调用我的启动器:
myLauncher.launch(senderRequest);
我的结果启动器是这样的:
但每次我打电话时myLauncher,数据都是空的
我正在使用 androidx 版本 1.4.1
android - Android Open Document Tree with Activity Result Contract
我最近在我的应用程序中更新了不推荐使用的方法,其中有一个我有几个问题。没有找到任何描述我的用例的示例或解释......有本地备份和恢复功能。用户必须选择一个目录来保存数据或从中恢复数据。它是这样实现的:
然后根据请求代码备份或恢复:
现在有了这个活动结果合同,我如何指定自定义请求代码,是否有可能。访问目录的 Android 文档仍然使用startActivityForResult()
ActivityResultContract.StartActivityForResult() - 是一个通用合约,它接受任何 Intent 但无法提供自定义请求代码。
至于现在,我只是创建了 2 个用于备份和恢复的启动器:
这是这样做的方法吗?我查看了自定义合同,但不知道如何返回 Uri 和自定义变量(在这种情况下为请求代码)。
java - 将子活动中的数据传递给先前活动中的回收站
我是一个安卓菜鸟。
我的主要活动包含一个回收视图,其中列出了用户/学生预订的所有课程。数据来自 SQLite DB。当用户点击其中一个课程时,一个新活动 (LessonInfo) 会显示其详细信息,并且——只有其中一个处于特定状态(“prenotato”,即已预订)——用户可以通过按下两个不同的按钮来更改其状态。
在用户按下这些按钮之一后,我正在尝试更新 MainActivity 中的回收站视图。目前,视图会在每次 onResume 和每次提取数据库中的所有数据时更新。
我希望 1)仅在用户更改一堂课的状态时获取数据,以及 2)仅使用其位置更新该特定课程的持有者。试了好几次都被锁了
非常感谢
主要活动
LessonsRecyclerAdapter
课程信息
更新 - 已解决
感谢 Taranmeet Singh,我找到了实现目标的方法。
我首先尝试了使用startActivityForResult()(DEPRECATED) 和notifyItemChanged().
我注意到我必须对 LessonsInfo 中的 onClickListeners 进行一些更改:而不是重新创建活动,我现在回忆起一个函数 ( switchView()),女巫只是修改了外观。
为了让用户看到 LessonInfo 活动中的变化(不会自动返回 MainActivity),我只是isLessonUpdated在函数中使用了一个布尔值作为标志onBackPressed():当用户返回上一个活动时,当且仅当他已经改变了课程的状态,我设置了Intent的结果。
最后,我用 替换了不推荐使用的函数registerForActivityResult(),registerForActivityResult相应地更改了主要活动中的 onItemClick。
这是我想出的代码。没有对 LessonRecyclerAdapter.java 应用任何相关更改。随时提出改进建议。
新的 MainActivity
新课程信息
android - 使用 registerForActivityResult 访问相机时出现 ActivityNotFoundException
我的 API 28 应用程序在尝试使用 registerForActivityResult 使用相机(在模拟器和真实设备中)拍摄照片时抛出此 ActivityNotFoundException:“未找到处理 Intent { act=android.media.action.IMAGE_CAPTURE typ= 的活动image/jpg flg=0x3 clip={text/uri-list U:content://..."
`公共类 IntentHelper {
}`
我从一个片段调用这个自定义 IntentHelper 类的对象中的 handleIntent 方法,由点击事件触发。构造函数中传递的 ActivityResultRegistry 参数在该片段中从主活动中检索。
当设备相机未打开时,应用程序会在相应文件夹中创建空文件。在我使用已弃用的 startActivityForResult 之前,这项工作工作得很好,所以我认为权限、路径和依赖项都很好......