【问题标题】:Sending Tag or string to back method将标签或字符串发送到 back 方法
【发布时间】:2013-10-12 12:38:30
【问题描述】:

我想通过addToBackStack() 方法向onBackPressed() 方法发送标签或字符串。我不知道如何发送标签(或字符串)以及如何提供此标签。

我读过这个,但我不明白如何使用它。什么是SettingsFragment.TAG

当我得到这个标签或字符串时,我希望能够用if 语句检查这个值。

请简单解释一下。

android fragment addToBackStack(null) :how to add the same fragment to stack just one time?

【问题讨论】:

    标签: android callback


    【解决方案1】:

    SettingsFragment.TAG 是 SettingsFragment 类的类常量(如全部大写所示),可能在 SettingsFragment 中定义如下:

    public static final String TAG = "com.example.app_name.SettingsFragment.tag";
    

    如果您为每个 Fragment 定义不同的标签,您可以稍后使用

    识别它们
    Fragment findFragmentByTag (String tag)
    

    编辑: 要从 backstack 中弹出 Fragment,可以使用以下命令:

    FragmentManager fm = getActivity().getSupportFragmentManager();
    fm.popBackStack ("SettingsFragment.TAG", FragmentManager.POP_BACK_STACK_INCLUSIVE);
    

    【讨论】:

    • 你为什么给我否定的?我不知道 TAG .. 无论如何,我声明了 TAG 变量,并在我的片段的 addToBackStack 中设置了它,但我不知道我怎么知道 onBackResume() ,我是否弹出第二个片段(在 addToBackStack 中有 TAG 变量)。请进一步解释,因为我想接受你的回答,但我听不懂:)
    • 我没有否决你的问题,其他人这样做了......我不太明白你在这里想要做什么,但要从后台弹出(删除)一个片段,请参阅我的编辑。
    • 我可以解决我的问题,但我有一个新问题,但这不允许我问问题:(我接受任何答案,但再次不允许
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-22
    • 1970-01-01
    相关资源
    最近更新 更多