我的意思是,ProgressDialog静态方法show()的返回值与该类实例的非静态方法show有什么区别?
是否有理由更喜欢这种策略
ProgressDialog pd = new ProgressDialog(mActivity);
pd.setTitle(mTitle);
pd.setMessage(mMessage);
pd.show();
到此:
ProgressDialog pd = ProgressDialog.show(mActivity,mTitle,mMessage);
针对特定情况?
答案 0 :(得分:2)
在我看来,"正确"方法取决于您的用法。静态show( ... )
方法执行的步骤与您相同:
public static ProgressDialog show(Context context, CharSequence title,
CharSequence message) {
return show(context, title, message, false);
}
public static ProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate) {
return show(context, title, message, indeterminate, false, null);
}
public static ProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate, boolean cancelable) {
return show(context, title, message, indeterminate, cancelable, null);
}
public static ProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate,
boolean cancelable, OnCancelListener cancelListener) {
ProgressDialog dialog = new ProgressDialog(context);
dialog.setTitle(title);
dialog.setMessage(message);
dialog.setIndeterminate(indeterminate);
dialog.setCancelable(cancelable);
dialog.setOnCancelListener(cancelListener);
dialog.show();
return dialog;
}
您可以看到,对静态show
方法和参数的任何调用最终都会构建一个ProgressDialog并调用实例方法show()
。
使用静态show( ... )
方法可以方便您使用一行代码显示基本的ProgressDialog。
答案 1 :(得分:1)
用大写p写它是正确的方法,因为方法显示是静态的
ProgressDialog.show(mActivity,mTitle,mMessage);
请参阅文档here
有没有理由更喜欢这种策略?
之所以最好的方法是这样的 应始终以静态方式访问静态方法