我有一个具有静态实例化方法的片段。它需要一些参数,这些参数是一些自定义类的对象。我想为他们编写 UT,并且我正在使用 launchFragmentInContainer。有没有办法我可以调用这个在显示片段之前初始化片段的静态方法?
我知道有 launchFragment 方法,我们可以在其中传递 bundle args 和 FragmentFactory 。但我没有使用它们。
片段代码:
public class MyDialogFragment extends DialogFragment {
static Person mPerson;
static MyDialogFragment newInstance(Person person) {
MyDialogFragment f = new MyDialogFragment();
mPerson = person
return f;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
}
}
测试:
@Test
fun testMyDialogFragment() {
with(launchFragment <MyDialogFragment>()) {
onFragment {fragment ->
assertNotNull(fragment.dialog)
}
}
}
我希望 launchFragmentContainer 应该有办法在启动片段之前调用这样的静态方法