【问题标题】:Tell Fragment which XML to Inflate告诉 Fragment 要膨胀哪个 XML
【发布时间】:2011-03-30 20:18:36
【问题描述】:

我从一个 home 片段开始,它打开一个 listFragment(Al),或者我可以选择一个普通的 Fragment(Jim)。如果从 listFragment(Al) 调用我的新 Fragment(Bob),我希望 Fragment(Bob) 调用 XML A。如果从 Fragment(Jim) 调用 Fragment(Bob),我希望 Fragment(Bob) 膨胀 XML B。如何从 listFragment(Al) 和 Fragment(Jim) 传递可以在 Fragment(Bob) 的 onCreateView 中检查的值,以便 Fragment(Bob) 知道要膨胀哪个 XML?

希望一切都有意义。

谢谢。

【问题讨论】:

    标签: android xml android-3.0-honeycomb android-fragments inflate


    【解决方案1】:

    使用获取/设置参数: http://developer.android.com/reference/android/app/Fragment.html#getArguments()

    [编辑]

    因此,当您从 Fragment Jim 创建 Fragment Bob 时,您可以执行以下操作:

    Bob b = Bob.newInstance();
    Bundle bundle = new Bundle();
    bundle.put("resourceId", R.id.XMLB);
    b.setArguemnts(bundle);
    

    或者你甚至可以在 newInstance 方法中获取 resourceId

    Bob b = new Bob.newInstance(R.id.XMLB);
    

    【讨论】:

    • 我认为这就是我需要使用的东西,问题是我无法从中做出任何事情。
    • 好的。那么一旦我设置好了,Bob 怎么知道在膨胀视图时使用那个 XML?
    • 是的。对不起。你去吧。谢谢
    猜你喜欢
    • 1970-01-01
    • 2013-12-29
    • 1970-01-01
    • 1970-01-01
    • 2017-02-01
    • 1970-01-01
    • 2022-12-12
    • 2015-10-21
    • 2014-03-23
    相关资源
    最近更新 更多