我的代码目前看起来像这样
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ProgressBar
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center"
android:id="@+id/progressBar" />
<WebView
android:layout_width="match_parent"
android:layout_height="518dp"
android:id="@+id/webview" />
</LinearLayout>
我的ProgressBar只是水平居中而不是垂直居中。
我可以使用此代码以两种方式使其居中
<ProgressBar
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_gravity="center"
android:id="@+id/progressBar" />
然后进度条(或者更确切地说是旋转的)尽可能大,所以它覆盖了整个屏幕。
对此有任何解决方案,因此我可以将其置于正常高度和宽度的中心。
答案 0 :(得分:1)
尝试以编程方式进行:
ProgressDialog dialog = new ProgressDialog(activity);
dialog.setMessage("Loading...");
dialog.setCancelable(false);
dialog.show();
我总是以编程方式制作并且工作正常(如预期的那样)。
答案 1 :(得分:1)
如果您希望将ProgressBar
放在屏幕中央和WebView
之上,则需要使用FrameLayout
或RelativeLayout
,例如这个:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<WebView
android:layout_width="match_parent"
android:layout_height="518dp"
android:id="@+id/webview" />
<ProgressBar
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center"
android:id="@+id/progressBar" />
</RelativeLayout>
请注意订单问题。 (ProgressBar
之后的WebView
)