我正在学习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 片段的最佳实践