我在屏幕中间的活动中显示WebView时遇到问题。
我有一个活动,我想在屏幕中心显示一个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);
}
。
答案 0 :(得分:1)
setContentView(webview)
是不可能的,你确定你在这里作为param传递webView吗?它应该是布局资源的id。或者你的意思是addView
?
您应该将WebView放在布局资源中,并将layout_gravity属性添加到
layout_gravity="center_horizontal|center_vertical"
和/或周围的linearLayout或您使用的任何内容:
gravity="center_horizontal|center_vertical"
请提供您的代码以获得更多说明。