为前棒棒糖设备创建循环显示

Rah*_*ury 5 animation android material-design animator

首先,这与前Lollipop设备(Android)的创建循环显示不同

我正在使用那里提到的库来创建Circular Reveal,但它似乎对我不起作用.

XML

<io.codetail.widget.RevealFrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <FrameLayout
            android:id="@+id/circBack"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#ff4081"
            android:visibility="invisible"
            ></FrameLayout>
</io.codetail.widget.RevealFrameLayout>
Run Code Online (Sandbox Code Playgroud)

JAVA

                View myView = findViewById(R.id.circBack);


                // get the center for the clipping circle
                int cx = (myView.getLeft() + myView.getRight()) / 2;
                int cy = (myView.getTop() + myView.getBottom()) / 2;

                // get the final radius for the clipping circle
                int finalRadius = Math.max(myView.getWidth(), myView.getHeight());


                SupportAnimator animator = ViewAnimationUtils.createCircularReveal(myView, cx, cy, 0, finalRadius);
                animator.setInterpolator(new AccelerateDecelerateInterpolator());
                animator.setDuration(1000);
                myView.setVisibility(View.VISIBLE);
                animator.start();
Run Code Online (Sandbox Code Playgroud)

圆形揭示没有显示出来.我的意思是代码执行时没有任何反应.

Logcat显示了这一点

07-01 19:15:47.498  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealRadius>

07-01 19:15:47.498  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealRadius>

07-01 19:15:47.498  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealRadius>

07-01 19:15:47.501  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.ViewAnimationUtils$SimpleAnimationListener>

07-01 19:15:47.501  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.ViewAnimationUtils$SimpleAnimationListener>

07-01 19:15:47.502  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealFinishedGingerbread>

07-01 19:15:47.502  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealFinishedGingerbread>

07-01 19:15:47.502  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealFinishedIceCreamSandwich>

07-01 19:15:47.503  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealFinishedIceCreamSandwich>

07-01 19:15:47.503  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealFinishedJellyBeanMr2>

07-01 19:15:47.503  27556-27556/com.ledo.ledoapp I/art? Rejecting re-init on previously-failed class java.lang.Class<io.codetail.animation.RevealAnimator$RevealFinishedJellyBeanMr2>
Run Code Online (Sandbox Code Playgroud)

但是,如果将视图设置为在XML文件中可见,则圆形显示确实有效,但问题是如果我将视图" circBack "设置为在XML中可见,它从应用程序启动时开始显示,这通常是.

任何解决这个问题的方法?

Rah*_*ury 2

好吧,这可能是 Gradle 依赖项的问题,因为当我以这种方式添加库时它起作用了,

错误的方法

dependencies {
    compile ('com.github.ozodrukh:CircularReveal:2.0.1@aar') {
        transitive = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

正确的方法

dependencies {
    compile 'com.github.ozodrukh:CircularReveal:2.0.1'
}
Run Code Online (Sandbox Code Playgroud)

不过很抱歉回答晚了。希望它可以帮助有需要的人。