使用哪种方法将参数传递给片段



我正在学习Android开发中的Fragment。所以问题是哪种方法更适合将参数从Activity传递到Fragment

fragment.setArguments(args);

MyFragment.newInstance(args);

还是使用哪一个无关紧要?感谢您的努力。

因为MyFragment.newInstance(args)是静态的,所以它使用 setArguments() 将参数传递给 Fragment 的实例。

在大多数情况下,使用 newInstance() 实例化片段是创建片段的好做法。

public static MyFragment newInstance(int someInt) {
    MyFragment myFragment = new MyFragment();
    Bundle args = new Bundle();
    args.putInt("someInt", someInt);
    myFragment.setArguments(args);
    return myFragment;
}

请参阅:实例化新 Android 片段的最佳实践

最新更新