Webview を開く Android アプリを作成する必要があります。webview では、JavaScript を使用して、ページ内の画像のサイズを調整しようとしています。
問題は、画面の幅を確実に検出する方法が見つからないことです。
window.innerWidth または outerWidth はほとんど機能しますが、同じデバイスでランダムに間違った値を返します。
画面の幅を検出する他の良い方法はありますか?
Webview を開く Android アプリを作成する必要があります。webview では、JavaScript を使用して、ページ内の画像のサイズを調整しようとしています。
問題は、画面の幅を確実に検出する方法が見つからないことです。
window.innerWidth または outerWidth はほとんど機能しますが、同じデバイスでランダムに間違った値を返します。
画面の幅を検出する他の良い方法はありますか?
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
これは、ピクセル単位で表示サイズを取得します
編集:
または、次のコードを使用できます。
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth(); // deprecated
int height = display.getHeight(); // deprecated
そうすることで、webview でネイティブ コードと JavaScript と通信できます。ネイティブ コードで、webview の幅を取得する関数を記述し、JavaScriptInterface を実装して JavaScript からこの関数を呼び出します。