gpt4 book ai didi

android - 扩展 Intent 类...收到 ClassCastException

转载 作者:搜寻专家 更新时间:2023-11-01 07:40:28 25 4
gpt4 key购买 nike

我正在尝试创建一个增强的 Intent 类(我称它为 DataIntent),方法是让它能够容纳 Object 类型的“有效负载”(相对于使用它的Uri 的内置工具)。 DataIntent 扩展了 Android 的 Intent 类。

我的 Activity 创建了扩展对象,没有任何问题,并且 startActivityForResult() 的调用也没有任何问题。但是,在响应 Activity 中,当我调用 getIntent() 方法并尝试将其转换为我的 DataIntent 时,我将抛出ClassCastException.

我意识到这可能是一个非常愚蠢的问题 - 提前 1,000 个应用程序 - 但有谁知道为什么我不能将它转换为 DataIntent 因为那是用来启动新的 Activity,而 DataIntentIntent 的子项?

DataIntent dataIntent = (DataIntent)getIntent(); 
// invoked inside the responding Activity instance - throws a ClassCastException

最佳答案

对不起,你不能那样做。您需要将数据放在 Intent 中。 Intent 对象跨进程移动,因此您返回的实例与您创建的实例不同。

关于android - 扩展 Intent 类...收到 ClassCastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4547820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com