我在运行时使用asychtask加载textview值和图像视图,这需要时间,我不想在整个屏幕上显示progressDialog。相反,我想要一个小的进度条代替textview和图像视图。我怎样才能实现同样的目标。可能吗?? 在某些应用程序中,我看到了相同的内容。
由于
答案 0 :(得分:1)
是的,您可以使用扩展Dialog
类
import android.app.Dialog;
import android.content.Context;
import android.widget.ProgressBar;
import android.widget.RelativeLayout.LayoutParams;
public class MyProgressDialog extends Dialog {
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message) {
return show(context, title, message, false);
}
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate) {
return show(context, title, message, indeterminate, false, null);
}
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate, boolean cancelable) {
return show(context, title, message, indeterminate, cancelable, null);
}
public static MyProgressDialog show(Context context, CharSequence title,
CharSequence message, boolean indeterminate,
boolean cancelable, OnCancelListener cancelListener) {
MyProgressDialog dialog = new MyProgressDialog(context);
dialog.setTitle(title);
dialog.setCancelable(cancelable);
dialog.setOnCancelListener(cancelListener);
/* The next line will add the ProgressBar to the dialog. */
dialog.addContentView(new ProgressBar(context), new LayoutParams(40,40));
dialog.show();
return dialog;
}
public MyProgressDialog(Context context) {
super(context, R.style.NewDialog);
}
}
在您的活动中,只需像这样调用以显示:
MyProgressDialog dialog=MyProgressDialog.show(this, null,null);
也像往常一样解雇dialog.dismiss()
。您可以在style.xml中指定属性
答案 1 :(得分:1)
这是你可以做的。 ProgressBar可以作为视图添加到布局中,因此只需将其添加为图片视图和文本视图顶部的视图(使用说FrameLayout),一旦获得数据,就可以设置其可见性ProgressView
至INVISIBLE
或GONE
。
ProgressBar
的javadoc页面也有可以使用的代码示例。