我在布局中有一个包含9个surfaceView的网格。用户可以单击任何surfaceView来加载相机。在加载过程中,我需要在该表面视图上显示ProgressDialog。目前我这样做。
pd = new ProgressDialog(getActivity(), R.style.MyTheme);
pd.getWindow().setGravity(Gravity.CENTER_VERTICAL);
pd.setCancelable(false);
pd.setProgressStyle(android.R.style.Widget_Holo_ProgressBar_Large);
pd.show();
这显然是一个进度对话框,但它将位于屏幕的中央。
如何让它在surfaceView上居中?
答案 0 :(得分:1)
我认为你要找的是进度条而不是进度对话(如果我错了就纠正我)。
Difference between Progressbar and progressDialog
修改强>
这是进度条的语法。
ProgressBar(Context context, AttributeSet attrs, int defStyleAttr)
以下是创建进度条并将其居中的示例。
// Initialize a new Progressbar
ProgressBar progressBar = new ProgressBar(this, null, android.R.attr.progressBarStyleSmall);
// Set the Gravity for the parent view group
linearLayout.setGravity(Gravity.CENTER);
// Add the Porgress bar to the parent view group
linearLayout.addView(progressBar);
此处线性布局正在按住进度条。您可以将其替换为父视图。