6

これ を使用しlibraryて実装するRipple Effectと、デバイス以外では問題なく動作しAndroid Mます。

Android Mデバイスで、復元でアンダーフローと表示される - 保存より復元がIllegalStateException多い

FATAL EXCEPTION: main
Process: com.example.ripplethings, PID: 20119
java.lang.IllegalStateException: Underflow in restore - more restores than saves
at android.graphics.Canvas.native_restore(Native Method)
at android.graphics.Canvas.restore(Canvas.java:540)
at com.andexert.library.RippleView.draw(RippleView.java:166)
4

1 に答える 1

5

Android 6.0 のライブラリ自体のバグのようですが、バグを回避する方法として考えられるのは

1) com.balysv:material-ripple:1.0.2 ライブラリを使用すると、より安定しているようです

2) または、21+ 用に別のレイアウトを配置して、Android M にリップル自体を処理させることもできます。レイアウトとビューに適切なリップル ホルダーを使用するだけです

3)または、この提案に従ってライブラリのソースコード自体を変更できます

4) このライブラリの固定バージョンは @ git で入手でき、次のように gradle で使用できます。

compile 'com.github.Hitta:RippleEffect:82cf00e551'
repositories {
            ...
            maven { url "https://jitpack.io" }
        }
于 2016-03-01T04:53:11.497 に答える