0

JQM と Phonegap 3.1 を使用してアプリを構築しています。このアプリでは、多くのアニメーションと対話機能を備えたキャンバスが JQM ヘッダーのすぐ下にあります。ユーザーはキャンバスを全画面表示にすることができます。その場合、ヘッダーを非表示にします。

固定ヘッダーを使用すると、キャンバスが上にスライドするのではなく(固定ヘッダーが固定されていない場合のように)、それを非表示にしようとすることに早い段階で気付きました。キャンバスの上部 1 インチの正確なミラー複製。すべてのアニメーションを含みます。そして、アプリの速度を落とさずにこれを行うようです。まるでキャンバスが 2 回ブリットされているかのようです。

簡単なことですが、固定ヘッダーは使用しないと思います。私は一ヶ月間その行動を見ていません。しかし、昨日、同僚の電話でテストしたところ、ページがロードされたときにキャンバスのフルサイズのコピーが2つ、上下に表示されました。一番上のものは一番下のもののインタラクティブ性を正確に反映しています.

スプライトを事前に描画するために使用される予備の非表示のキャンバス要素がありますが、インタラクティブ コードの 2 番目のコピーを受け取る方法はありません。最初のコピーで起こっていました。したがって、私は 2 番目のキャンバスを見ていたとは思いません。非常に低レベルの再描画バグを見ていたと思います。

再現性がありませんでした。ロード画面で電話を水平にしてから、ある時点で垂直に戻しましたが、何十回も試行した後、再びそれを実現することはできませんでした.

この種の動作が発生するのを見た人はいますか?それを回避する方法はありますか?

4

1 に答える 1

0

これは実際には GPU ブリッティング バグであることが判明しました。ここで詳細に議論されています:

電話 Android HTML5 ハードウェア アクセラレーション - キャンバス

于 2013-11-14T14:41:00.880 に答える