AndroidアプリケーションのフルスクリーンのWebViewを作成する方法。レイアウトXMLファイルにWebViewを追加しましたが、レイアウトの端まで拡張されません。また、実際にどのように見えるかについてのヒントを皆さんに提供するために、画像を追加しています。
私が話しているのは、通知バーやタイトルバーではなく、ウェブビュー全体のスペースです
レイアウトコードは次のとおりです。
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:paddingBottom="@dimen/activity_vertical_margin"
Android:paddingLeft="@dimen/activity_horizontal_margin"
Android:paddingRight="@dimen/activity_horizontal_margin"
Android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".WebView" >
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_centerHorizontal="true"
Android:layout_centerVertical="true"
Android:text="Shake / Tilt Your Phone To Get Accelerometer Motion Alerts" />
<WebView
Android:id="@+id/webview"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:layout_alignParentLeft="true"
Android:layout_alignParentTop="true" />
</RelativeLayout>
上記のコードからpadding tags
-
Android:paddingBottom="@dimen/activity_vertical_margin"
Android:paddingLeft="@dimen/activity_horizontal_margin"
Android:paddingRight="@dimen/activity_horizontal_margin"
Android:paddingTop="@dimen/activity_vertical_margin"
それは仕事をするでしょう、そしてあなたがいくらかのスペースを残すそれらのタグを含むかもしれないWebViewにあなたがレンダリングしているHTMLのマージン/パディングを削除することも必ずします。
AndroidManifest.xmlファイルで次の行を使用して、アクティビティのAndroid:theme
属性を追加(または変更)するだけです
Android:theme="@Android:style/Theme.NoTitleBar.Fullscreen"
Androidバージョン:4.2.2-デバイス:Vegaタブレット
ステータスとシステムバーを非表示にし、完全な画面を表示するWebView次の手順に従いました。
AndroidManifest.xml
<application
Android:allowBackup="true"
Android:icon="@mipmap/ic_launcher"
Android:label="@string/app_name">
<activity
Android:name=".MainActivity"
Android:label="@string/app_name"
Android:theme="@Android:style/Theme.NoTitleBar.Fullscreen">
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
MainActivity.Java
super.onCreate(savedInstanceState);
getWindow().getDecorView().setSystemUiVisibility(0x10);
setContentView(R.layout.activity_main);
String url = "http://edition.cnn.com/";
WebView webView = (WebView) findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setUserAgentString("Desktop");
webView.loadUrl(url);
上記のプロセスはうまくいき、アプリは完全な画面に表示されます。
WebViewをダイアログポップアップウィンドウに配置します。
WebView webview = new WebView(this/*put your activity object*/);
webview.getSettings().setLoadWithOverviewMode(true);
webview.getSettings().setUseWideViewPort(false);
webview.getSettings().setSupportZoom(false);
webview.getSettings().setJavaScriptEnabled(true);
webview.setBackgroundColor(Color.TRANSPARENT);
webview.loadUrl("http://www.awwwards.com/websites/responsive-design/");
RelativeLayout.LayoutParams paramsWebView = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT);
Dialog dialog = new Dialog(this/*put your activity object*/, Android.R.style.Theme_Black_NoTitleBar_Fullscreen);
dialog.addContentView(webview, paramsWebView);
dialog.show();
ドキュメントから https://developer.Android.com/guide/webapps/webview.html
<?xml version="1.0" encoding="utf-8"?>
<WebView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/webview"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
/>
FILL_PARENT(APIレベル8以降でMATCH_PARENTに名前が変更されました)。これは、ビューが親と同じ大きさになることを意味します(マイナスパディング)
https://developer.Android.com/reference/Android/view/ViewGroup.LayoutParams.html
Res/valuesフォルダーにあるdimens.xmlでディメンションを設定できます。デフォルトでは16dpです。それに応じて設定できます。
相対レイアウト設定を変更する必要があります。また、XMLファイルのWebViewにパディング設定がある場合は削除します。
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools" Android:layout_width="match_parent"
Android:layout_height="match_parent"
tools:context=".MainActivity"
Android:id="@+id/frame">