Fragment 接口/侦听器适用于 Activity,但不适用于另一个 Fragment

瑞克

我有一个片段,里面也有两个片段。我正在尝试将两个片段中的侦听器实现到父片段。但是,我收到一个错误

@Override
public void onAttach(Context context) {
    super.onAttach(context);
    if (context instanceof MyPostsUpdateListener) {
        myPostsUpdateListener = (MyPostsUpdateListener) context;
    } else {
        throw new RuntimeException(context.toString()
                + " must implement MyPostsUpdateListener");
    }
}

我已经使用不同的侦听器以相同的方式实现了类似的东西,并且确实有效,但在这种情况下,它被实现到一个活动,而不是一个父片段。

有什么解决办法吗?因为我确信我已经以与其他一些活动相同的方式实现了它,唯一的区别是它是由一个活动实现的,在这种情况下,它会通过一个片段实现一个错误。

孙长

要将数据传回父片段,您可以通过调用getParentFragment方法在子片段中获取父片段的实例

public class ChildFragment extends Fragment {

    private void sendToParentFragment(String data) {
        Fragment fragment = getParentFragment();

        if (fragment instanceof MyPostsUpdateListener) {
            myPostsUpdateListener = (MyPostsUpdateListener) fragment;
            myPostsUpdateListener.onData(data);
        }
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

setOnTouchListener不适用于android Fragment

来自分类Dev

setOnTouchListener不适用于android Fragment

来自分类Dev

注册功能适用于一个脚本,但不适用于另一个脚本

来自分类Dev

如果我尝试使用自定义Fragment,则FragmentTransaction不适用于参数错误

来自分类Dev

错误:FragmentTransaction类型的方法add(int,Fragment,String)不适用于参数(int,FragementTest,String)

来自分类Dev

类型为FacebookButtonBase的setFragment(Fragment)方法不适用于参数(MainActivity.PlaceholderFragment)

来自分类Dev

相同的连接文件适用于 1 个脚本,但不适用于另一个

来自分类Dev

Elastic Load Balancer侦听器不适用于一个端口

来自分类Dev

事件侦听器不适用于锚点

来自分类Dev

关键侦听器不适用于布局

来自分类Dev

DialogFragment onClick侦听器不适用于ImageButton

来自分类Dev

侦听器不适用于文本字段

来自分类Dev

事件侦听器无法正常工作,适用于 chrome,不适用于 Firefox

来自分类Dev

Discord Java Bot-侦听器适用于DM,但不适用于公会消息?

来自分类Dev

(R)列均值适用于一个命令,但不适用于另一个命令

来自分类Dev

无密码sudo适用于一个用户,但不适用于另一个用户

来自分类Dev

线性回归算法适用于一个数据集,但不适用于另一个类似的数据集。为什么?

来自分类Dev

机器人适用于一个 Microsoft Teams 帐户,但不适用于另一个

来自分类Dev

Android事件总线不适用于两个事件侦听器

来自分类Dev

.pgpass适用于一个用户,但不适用于postgres用户

来自分类Dev

Fragment $ Companion无法在BottomNavigationView侦听器上强制转换为androidx.fragment.app.Fragment

来自分类Dev

加速的C ++ 14-5:自定义字符串类和引用计数器适用于一个构造函数,但不适用于另一个构造函数

来自分类Dev

加速的C ++ 14-5:自定义字符串类和引用计数器适用于一个构造函数,但不适用于另一个构造函数

来自分类Dev

Libgdx手势侦听器不适用于手机,但适用于桌面

来自分类Dev

@PreAuthorize不适用于从另一个函数调用的函数

来自分类Dev

确认框不适用于指向另一个选项卡的链接

来自分类Dev

链接不适用于仪表板,但另一个链接正在工作

来自分类Dev

绑定不适用于从另一个任务分配的属性

来自分类Dev

@PreAuthorize不适用于从另一个函数调用的函数

Related 相关文章

  1. 1

    setOnTouchListener不适用于android Fragment

  2. 2

    setOnTouchListener不适用于android Fragment

  3. 3

    注册功能适用于一个脚本,但不适用于另一个脚本

  4. 4

    如果我尝试使用自定义Fragment,则FragmentTransaction不适用于参数错误

  5. 5

    错误:FragmentTransaction类型的方法add(int,Fragment,String)不适用于参数(int,FragementTest,String)

  6. 6

    类型为FacebookButtonBase的setFragment(Fragment)方法不适用于参数(MainActivity.PlaceholderFragment)

  7. 7

    相同的连接文件适用于 1 个脚本,但不适用于另一个

  8. 8

    Elastic Load Balancer侦听器不适用于一个端口

  9. 9

    事件侦听器不适用于锚点

  10. 10

    关键侦听器不适用于布局

  11. 11

    DialogFragment onClick侦听器不适用于ImageButton

  12. 12

    侦听器不适用于文本字段

  13. 13

    事件侦听器无法正常工作,适用于 chrome,不适用于 Firefox

  14. 14

    Discord Java Bot-侦听器适用于DM,但不适用于公会消息?

  15. 15

    (R)列均值适用于一个命令,但不适用于另一个命令

  16. 16

    无密码sudo适用于一个用户,但不适用于另一个用户

  17. 17

    线性回归算法适用于一个数据集,但不适用于另一个类似的数据集。为什么?

  18. 18

    机器人适用于一个 Microsoft Teams 帐户,但不适用于另一个

  19. 19

    Android事件总线不适用于两个事件侦听器

  20. 20

    .pgpass适用于一个用户,但不适用于postgres用户

  21. 21

    Fragment $ Companion无法在BottomNavigationView侦听器上强制转换为androidx.fragment.app.Fragment

  22. 22

    加速的C ++ 14-5:自定义字符串类和引用计数器适用于一个构造函数,但不适用于另一个构造函数

  23. 23

    加速的C ++ 14-5:自定义字符串类和引用计数器适用于一个构造函数,但不适用于另一个构造函数

  24. 24

    Libgdx手势侦听器不适用于手机,但适用于桌面

  25. 25

    @PreAuthorize不适用于从另一个函数调用的函数

  26. 26

    确认框不适用于指向另一个选项卡的链接

  27. 27

    链接不适用于仪表板,但另一个链接正在工作

  28. 28

    绑定不适用于从另一个任务分配的属性

  29. 29

    @PreAuthorize不适用于从另一个函数调用的函数

热门标签

归档