我在Android代码中进行了一些挖掘,并在不确定的进度条中看到了它的使用.尝试使用此标记创建自己的drawable后:
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/spinner_pia"
android:pivotX="50%"
android:pivotY="50%"
android:framesCount="12"
android:frameDuration="100" />
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:"没有找到包''android'中属性'frameDuration'的资源标识符" - 这意味着frameDuration是一个私有属性.有没有办法使用这个"动画旋转"功能?
我的任务是替换系统的默认不确定进度条.我想尽可能少地编写代码(如果可能的话,只需更改一些属性).使用ProgressBar视图,设置:
android:indeterminateOnly="true"
android:indeterminateBehavior="cycle"
android:indeterminateDuration="3500"
android:indeterminateDrawable="@drawable/pia_sivuvator"
Run Code Online (Sandbox Code Playgroud)
并指向该对象的"@ drawable/pia_sivuvator"将使我的任务变得优雅,但我仍然坚持这些私有属性.
救命?
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/your_drawable"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360" />
Run Code Online (Sandbox Code Playgroud)
我想以编程方式旋转drawable.
我该怎么办?
这是我的回调
private class RotateListener implements RotateGestureDetector.OnRotateGestureListener{
@Override
public boolean onRotate(MotionEvent event1, MotionEvent event2,
double deltaAngle) {
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
在deltaangle不大于0.1,我不知道什么是提取价值.
是否可以创建具有某种动画的drawable,无论是逐帧动画,旋转等,它被定义为xml drawable并且可以由单个Drawable对象表示而无需处理动画在代码?
我如何使用它:我有一个列表,此列表中的每个项目可能在某个时候发生了一些事情.虽然它正在发生,但我希望有一个类似于不确定的ProgressBar的旋转进度动画.由于屏幕上可能还有其中的几个,我认为如果它们共享相同的Drawable,它们只需要在内存中有一个实例,它们的动画会被同步,所以你不会在各个点上有一堆旋转对象在旋转动画中.
我不喜欢这种方法.我只是想想一种最有效的方式来显示几个旋转进度动画,理想情况下将它们同步在一起,这样它们在外观上是一致的.
谢谢
回应Sybiam的回答:
我尝试过实现RotateDrawable但它没有旋转.
这是我到目前为止的drawable的xml:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/my_drawable_to_rotate"
android:fromDegrees="0"
android:toDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:duration="800"
android:visible="true" />
Run Code Online (Sandbox Code Playgroud)
我已经尝试使用drawable作为ImageView的src和背景,并且两种方式都只产生非旋转图像.
是否有必须开始图像旋转的东西?