【发布时间】:2014-01-27 10:18:40
【问题描述】:
我正在创建一个扩展 LinearLayout 的课程。我正在尝试以编程方式进行布局。这是我到目前为止所做的:
RelativeLayout.LayoutParams parentParam = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.MATCH_PARENT,
RelativeLayout.LayoutParams.MATCH_PARENT);
this.setLayoutParams(parentParam);
this.setOrientation(LinearLayout.VERTICAL);
WebView webView = new WebView(context);
LinearLayout.LayoutParams webViewParam = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.MATCH_PARENT);
webView.setLayoutParams(webViewParam);
this.addView(webView);
pb = new ProgressBar(context);
LinearLayout.LayoutParams pbParam = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
pbParam.gravity = Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL;
pb.setLayoutParams(pbParam);
webView.addView(pb);
我的一切工作正常,WebView 和 ProgressBar 可见并在那里执行相应的任务,但我试图将 ProgressBar 放在屏幕的 CENTER 中。
我在这里错过了什么。任何形式的意见都将受到赞赏。
编辑: 现在的输出如下所示:
【问题讨论】:
-
你在输出中得到什么,在这里发布。
-
为什么要在webview中添加pb?您应该将 pb 添加到 this.addView
-
@PratikButani 添加图片
-
@blackbelt 因为我要在webview中加载一些内容,所以我需要在那里显示进度条。
-
我认为是RelativeLayout的问题。您必须以编程方式设置
android:layout_centerHorizontal="true"和android:layout_centerVertical="true"。
标签: android android-layout progress-bar