naokazuterada
1/29/2013 - 4:09 AM

android_hardwareAccelerated_HTMLcanvas.md

hardwareAcceleratedとHTMLCanvasの不都合な関係

OS 4.1以降のAndroidで、hardwareAcceleratedが有効時にHTMLCanvasが2重化して表示される不具合。

OS 4.2.0以前に有効な対策(hardwareAcceleratedを無効化)

AndroidManifest.xmlで
android:hardwareAccelerated="false"
にする。

しかし、4.2.1以降の実機では、逆に複数重ねたCanvasが描画されなくなってしまった。

OS 4.2.1以降でも有効な対策(CSS側で対策)

AndroidManifest.xmlで
android:hardwareAccelerated="true"
もしくは、書かない(デフォルトはtrue)
canvasの親要素にoverflow:hidden;やoverflow:scroll;を持つものがないようにする。

参考: