4

Android Webview にローカル HTML とすべてのリソースを SD カードにロードしています。HTML は重い (1 ページあたり約 1MB) ため、WebView インスタンスが既にメモリに読み込まれていることを意味するプリロード戦略に取り組んでいます。

UI には、Webview の一連の線形レイアウトを備えた水平スクロールビューがあります。

プリロード戦略は、Nexus7 以外のすべてのデバイスで機能します。Nexus7 では、Web ページが読み込まれますが、表示できません。次のページにスワイプすると、最初に空白の画面が表示され、次に WebPage が表示されます。ただし、他のデバイスでは、空白のページも表示されません。

ハードウェアアクセラレーション、DOMCacheEnabled、その他のパラメーターなど、すべてのパラメーターを試しました。ユーザーが次のページにスワイプするとすぐに、最初の空白のページと HTML ではなく、HTML を直接表示できるように、空白の画面を避ける必要があります。

他に使えるものがあれば教えてください。

4

1 に答える 1

0

これに似たソリューションを実装しました。これが私の戦略でした。

必要なページの Web ビューを作成し、それらを追加、非表示にし、ロードをリッスンし、WebViewClient がロードの完了を通知したときにページを表示します。

それらにコンテンツを表示させる(空白を表示しないこともある)ためのトリックは、

1 WebView をレイアウトに追加する

2 View.setVisibility(View.GONE) を呼び出す

3 ロードされるまで待ちます

4 View.setVisibility(View.VISIBLE)

于 2013-11-07T09:30:35.767 に答える