【问题标题】:commit a fragment transaction with full screen fragment提交带有全屏片段的片段事务
【发布时间】:2018-10-10 22:41:16
【问题描述】:

我有一个片段(片段 A),它不是一个全屏,我想从它打开另一个片段(片段 B),它填满整个屏幕,而不知道容器 id

点击以下链接查看说明情况的图片

Fragment A open Fragment B

【问题讨论】:

    标签: android fragment fragmenttransaction fragmentmanager


    【解决方案1】:

    您的活动应该管理片段通信

    您通常希望一个 Fragment 与另一个 Fragment 进行通信,例如根据用户事件更改内容。所有 Fragment 到 Fragment 的通信都是通过关联的 Activity 完成的。两个 Fragment 永远不应该直接通信。

    要允许 Fragment 与其 Activity 进行通信,您可以在 Fragment 类中定义一个接口并在 Activity 中实现它。 Fragment 在其 onAttach() 生命周期方法期间捕获接口实现,然后可以调用接口方法以与 Activity 通信。 https://developer.android.com/training/basics/fragments/communicating

    【讨论】:

    • 不幸的是,我只需要片段 A 打开片段 B 全屏而不接触活动,因为我正在制作一个仅在片段上中继的库
    • 不确定这是否可行。也许全屏对话框会起作用。但正如 Leo 所说,您的 Activity 应该管理片段事务。如果你依赖 Fragments,你就依赖于 Activities。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-08
    • 2021-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多