我是基于从服务器收到的JSON以编程方式创建控件的。我需要创建的一个控件是WebView
,它在屏幕上水平居中。这在xml布局中很简单,如下所示,使用layout_gravity选项。但是,如何在代码中执行此操作,与WebView
不同的TextView
没有setGravity(Gravity.HORIZONTAL_GRAVITY_MASK)
方法。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<WebView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"/>
</LinearLayout>
答案 0 :(得分:2)
我会使用RelativeLayout,然后在添加视图时可以使用LayoutParams:
RelativeLayout.LayoutParams layoutParams= new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT, 1);
relativeLayout.addView(yourWebView, layoutParams);
答案 1 :(得分:0)
我使用LinearLayout来显示webview和setGravity。
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT));
linearLayout.setGravity(Gravity.CENTER);
WebView view = new WebView(this);
linearLayout.addView(view);
setContentView(linearLayout);
它会帮助你。