Android new MyFragment()和MyFragment.newInstance()之间的性能差异?
在我的项目中,我通过使用Android new MyFragment()和MyFragment.newInstance()之间的性能差异?,android,android-fragments,singleton,fragment,Android,Android Fragments,Singleton,Fragment,在我的项目中,我通过使用new MyFragments()实现了一些片段并创建了它们的对象。我的一些片段只启动了一次(Singleton)。我应该使用MyFragment.newInstance()来代替那些只使用一次的new MyFragments()?这种方法会提高应用程序的某些性能吗?或者我应该继续使用我的旧方法newmyfragments()这里性能是我主要关心的问题。您应该使用MyFragment.newInstance()来启动类似以下内容的片段: OfferSingleFragme
new MyFragments()
实现了一些片段并创建了它们的对象。我的一些片段只启动了一次(Singleton)。我应该使用MyFragment.newInstance()
来代替那些只使用一次的new MyFragments()
?这种方法会提高应用程序的某些性能吗?或者我应该继续使用我的旧方法newmyfragments()
这里性能是我主要关心的问题。您应该使用MyFragment.newInstance()来启动类似以下内容的片段:
OfferSingleFragment.newInstance(str);
在OfferSingleFragment中使用:
public static OfferSingleFragment newInstance(String s) {
OfferSingleFragment f = new OfferSingleFragment();
Bundle args = new Bundle();
args.putString("name",s);
f.setArguments(args);
return f;
}
后来:
String str_title = getArguments().getString("name") ;
因为我看到使用newInstance方法的唯一好处是:
您将有一个单独的位置,可以将片段使用的所有参数捆绑在一起,而不必每次实例化片段时都在下面编写代码(如上所述)
这是告诉其他类它希望哪些参数能够忠实地工作的一种好方法(尽管如果片段实例中没有绑定任何参数,您应该能够处理这些情况)
因此,我认为使用newInstance静态方法实例化片段是一种很好的做法。我已经说过:使用newInstance静态方法实例化片段是一种很好的做法。。这说明newInstance()的性能优于空构造函数。有关更多信息,请查看此链接:我没有任何参数通过我的片段,并且在片段中我必须有空构造函数(根据android文档)。因此,如果我使用的片段没有参数,那么为什么newInstance方式是更好的方式?我认为这是更多的开销。在这种情况下,您认为我应该使用什么?您可以使用newInstance空构造函数或带构造函数,它不会产生任何问题!!!!!