问题标签 [startactivityforresult]
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 - 即使我在 FragmentPagerAdapter 中尝试 startActivityForResult、saveInstanceState,BACK 按钮的意图也会丢失
我的 android 应用程序中有这个导航模式:
PrimaryActivity (... ListView onClick -通过意图发送<PrimaryUri>
...) > MasterActivity (TabLayout, ViewPager, FragmentPageAdapter) >
FragmentA / FragmentB (...ListView onClick - 通过意图发送<PrimaryUri> + <DetailUri> .. .) > 详细活动。
现在,当我在DetailActivity中按下 BACK 按钮时,MasterActivity 被销毁并使用 Fragment A 和 B 的新实例重新创建,并且 Intent 数据 ( <PrimaryUri> ) 丢失。
我尝试通过这种方式在 Activies 之间保持<PrimaryUri> :
- 在 MasterActivity 中覆盖 onSaveInstanceState / onCreate(Bundle),但即使 onSaveInstance 保存数据, Bundle 也始终为空
- 使用 getActivity().startActivityForResult(... 启动 DetailActivity,在 DetailActivity 中设置 resultIntent 并调用 setResult(OK, ResultCode > 0) 并在 MasterActivity.onActivityResult 中读取值...但从未调用过 onActivityResult
- 用 startActivityForResult 启动 DetailActivity, ...dtto...FragmentB.onActivityResult...但永远不会调用 onActivityResult
- 检查清单是否有错误的属性
现在我真的很感谢问题的帮助:如何在我的应用程序中保留<PrimaryUri>?我更喜欢使用意图来解决这种奇怪的行为。一些论坛讨论了 FragmentPageAdapter 等中的错误......也许我会重构它以使用 SharedPreferences 如果它是快速解决方案......
编辑:一些附加信息:
在详细活动中:
在 MasterActivity 我有:
在 FragmentB 我有:
奇怪的行为看起来像:
- 我在 DetailActivity > 按 BACK 按钮
- MasterActivity.onDestroy 被调用(为什么在那里?).. =
- 对 FragmentB 的 WeakReference 为 null 并创建了新实例 =
- MasterActivity 或 FragmentB 的 onActivityResult 永远不会被调用。
我认为原因是在等待 onActivityResult 时出现了 onDestroy。但是为什么调用它以及为什么没有完全重新创建 MasterActivity 以捕获 onActivityResult 回调?
android - 无法从子活动返回数据 (setResult)
在我的项目中,ActivityTwo 是作为 ActivityOne 的子活动启动的,而 ActivityOne 又经过修改以处理从 ActivityTwo 返回的数据。
ActivityOne 中的 TextView 应检索作为 ActivityTwo 中的键值添加到意图对象的 EditText 中输入的文本。尽管成功启动,但它并没有提取意图对象。
我查看了可能面临的类似问题并解决了这个问题: How to manage `startActivityForResult` on Android?
然而,我仍然无法弄清楚为什么我的 TextView 无法设置从第二个活动中检索到的意图对象中提取的文本。
任何有用的帮助表示赞赏。
在此先感谢您可以在下面看到代码:
活动一:
活动二:
android - ContactPicker 未在edittext中设置
我正在android中实现contactPicker
我创建了一个图像按钮并单击该按钮我开始 activityforresult 以获取编辑文本中的单个联系人电话号码
但问题是 data 始终为 null 。
这是我的代码
这是活动结果
我要做的就是选择一个联系人并将其电话号码加载到 EditText 。请帮助我,我尝试了互联网上所有可用的解决方案..我在哪里犯了错误?
android - 片段中的 startActivityForResult
我有两个问题:
第一:我想知道当我使用方法 1 时,我知道 2 方法的不同之处,因为我的应用程序运行正常,但我更改方法 2 它无法运行。方法 1(简单拍照):
和方法2:
---相机片段的onActivityResult:
主要问题:现在我有 MainFragment 扩展 FragmentActivity(有片段相机和地图)。但是当我在片段相机中
然后在onActivityResult方法中,resultCode总是==0,尽管它必须==1;. 谁可以显示我的问题???我哪里错了??
请注意 mainFragment 我只是调用:
谢谢
android - 如何使用 startActivityForResult 管理活动
我遇到了这样的情况:
Activity A --> B --> C --> D,当 D 完成后,我必须刷新 ActivityA 以显示我在 ActivityB 、 ActivityC 和 ActivityD 中输入的内容。这是我的代码:
活动A
活动B
ActivityC代码和ActivityB一样,最后一个ActivityD如下:
这样我就可以得到ActivityB,ActivityC,ActivityD中的输入值了。但是我必须onActivityResult
在每一个Activity上重写方法并一个一个地处理数据。有没有其他简单的方法可以让我处理这种情况?有什么好的建议我将不胜感激。
android - How to open messages from Android App using startActivityForResult()
I want to use a floating action button for opening a new message from my android phone. I have used startActivityForResult() method for successfully opening settings. But when I use the same for opening messages, this method doesn't seem to work. I have also attached my code to be more clear.
android - 带有 startActivityForResult 的适配器
大家好,我想在 BindHolder 中编辑 Recycle-view startAcivityForResult/onActivityResult 我的代码项
在 BindHolder 中值为 null 但在这里它可以正常工作
请有任何提示!非常感谢大家
android-intent - 在活动之间传递额外内容并将它们转发到单个活动
我的应用程序是一个基本的登录应用程序,最后将显示用户在其他活动中的字段输入的所有值。我正在使用意图对象和标志。活动使用:
- 意图额外存储键值,
- FLAG_ACTIVITY_FORWARD_RESULT
- startActivityForResult() 和 onActivityForResult() 方法
因此,命名为 AActivity、BActivity、Caactivity 的活动和导航流必须是:A → B → C → A,结果来自 B 和 C。
我对代码逻辑的理解是,这告诉 Android 活动 3 应将其结果转发回调用活动 2 的活动,在本例中为活动 1。同样,当活动 3 设置其结果并完成时,活动 1 中的 onActivityResult() 将使用活动 3 发送的结果数据进行调用。
但是,当我运行应用程序时,我只从活动 3 获取结果,但从活动 2 接收到 null,在活动 1 的 TextView 中显示为 null,null,valueC,valueC,如图所示。 点击图片
我用谷歌搜索并搜索了出现的类似问题,但无法解决问题。
预先感谢您的帮助
这是我的代码:
活动:
}
B活动:
}
C活动:
}
android - 完成第二个活动后,第一个活动中的 onActivityResult 未返回结果
Activity A 使用以下代码调用 ActivityB
活动 B 通过以下方式调用活动 c:
我以返回结果完成活动 C 并在那里开始新的活动 D
我想在获取返回结果时完成活动 A 和活动 B
但我没有得到返回结果。在这种情况下
总之我想要这个功能
我只得到两者之一。它进行下一个活动或返回结果。我想同时返回返回结果的下一个活动。
android - 当我尝试从适配器调用 onActivityForResult 时,为什么我的活动调用 onDestroy?
在主要活动中有一个具有RecyclerView的片段。当用户单击 RecyclerView 中的项目时,我从我的适配器调用,我在我的主要活动中的方法((Activity)v.getContext()).startActivityForResult(intent, Config.REQUEST_ATTENDEES)
上处理了这个请求。onActivityResult
并从 再次膨胀片段onActivityResult
。我onActivityResult
被触发但在被触发后,我的主要活动调用onDestroy
. 以下是我查看的资源:
我们可以从适配器调用 startActivityForResult 吗?
onActivityResult 在 onDestroy 之后不再被调用
我在想第二个可能是我的问题,但我不确定,因为在我的适配器中,(Activity)v.getContext()
应该是我的主要活动。任何建议都会很好。