这是从fragment继承的代码。
我试过了,但没有base.OnCreateView (inflater, container, savedInstanceState);
,效果很好。有必要叫它吗?
看起来它调用了抽象类,并且应该是registers视图,但是我们必须这样做吗?
oncreateview被重写,这里是
public override View OnCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
base.OnCreateView (inflater, container, savedInstanceState);
View oView = inflater.Inflate (Resource.Layout.EntityDetailsDialogFragment, container, false);
return oView;
}
最佳答案
android是开源的,所以你可以自己检查。这是Fragment.onCreateView()
的来源:
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup , @Nullable Bundle savedInstanceState) {
return null;
}
调用
super.onCreateView()
不会做任何事情,因为没有实现。此外,此方法返回的值与其他生命周期方法(如onCreate()
)不同,因此要执行有意义的操作,您必须执行View blah = super.onCreateView()
,因为否则您将丢弃返回值。关于c# - 如果覆盖时未调用base.OnCreateView(...),该怎么办?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28844055/