在屏幕中间的活动中显示WebView时出现问题。 我有一个活动,我想在屏幕中央显示一个网络视图。我的活动是透明的,所以背景活动是可见的。每当我试图创建一个WebView并使用setContentView(WebView)将其添加到活动中时,它总是在屏幕的左上角显示该视图。他们是解决这个问题的方法吗?我只想通过纯代码来实现这一点。这是我的密码。
protected void onCreate(Bundle savedInstance) { //some initialization stuff LinearLayout ll = new LinearLayout(activity); ll.setOrientation(LinearLayout.VERTICAL); ll.setGravity(Gravity.CENTER_HORIZONTAL); ll.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT)); ll.setBackgroundColor(android.R.color.transparent); ll.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL); //added after suggestion webView = new WebView(this); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setBuiltInZoomControls(true); webView.loadUrl("http://www.google.com"); ll.addView(webView); webView.setBackgroundColor(android.R.color.transparent); setContentView(ll); }
setContentView(webview) 不可能,您确定要将WebView作为参数传递给这里吗?它应该是布局资源的ID。或者你的意思是 addView ?
setContentView(webview)
addView
您应该将WebView放置在布局资源中,并将布局重力属性添加到
layout_gravity="center_horizontal|center_vertical"
和/或周围的线性布局或任何你使用的:
gravity="center_horizontal|center_vertical"
请提供您的代码以便进一步澄清。