私は自分のウェブサイトのブラウザのように振る舞うアンドロイドアプリを作っています。単なるウェブサイトアプリ。しかし、何らかの理由で、アプリケーションをアプリに合わせてページを拡大縮小することができません。検索して試しましたが、何も機能しませんでした。
ここに私のコードの一部があります:
private final String URL = "http://justplaymobile.com/html5games/smedia/tiptap/";
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Activity activity = this;
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
final WebView webview = (WebView)findViewById(R.id.webview1);
webview.setWebChromeClient(new WebChromeClient());
webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
webview.setScrollbarFadingEnabled(true);
webview.setPadding(0, 0, 0, 0);
WebSettings settings = webview.getSettings();
settings.setJavaScriptEnabled(true);
settings.setSupportZoom(true);
settings.setAppCacheEnabled(true);
settings.setDatabaseEnabled(true);
settings.setDomStorageEnabled(true);
settings.setLoadWithOverviewMode(true);
settings.setUseWideViewPort(true);
settings.setLayoutAlgorithm(LayoutAlgorithm.NARROW_COLUMNS);
webview.loadUrl(URL);
webview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
public void onPageStarted(WebView view, String url, Bitmap favicon){
// I've tried to put stuff here which haven't helped
}
@Override
public void onPageFinished(WebView view, String url){
// I've tried to put stuff here which haven't helped
super.onPageFinished(view, url);
}
});
}
ブラウザーを介して同じ Web サイトに入ると、見栄えがよく、viewport メタ タグを使用してウィンドウに収まりますが、Web ビューでは機能しません。私がなんとかしたのは、ページをwebviewの幅に合わせることだけです。高さに合わせることも必要です。概要モードと同じように(実際には機能しません)。setInitialScale のさまざまな組み合わせも試しましたが、あまり役に立ちませんでした。JavaScriptによるスケーリング/ズームを含むソリューションを探していません。
- SDKv10 を使用しています。
- テスト中、シミュレーターはページを Web ビューに収めることができたことがありますが、実際のデバイス (複数の携帯電話やタブレットで試した) でテストすると、うまくいきませんでした。
ありがとうございました!