android - 在 Android 中旋转按钮
问题描述
我想使用以下代码逐渐旋转我的 Android 应用程序中的一个按钮:
for(int i=0; i<90; i++)
{
myButton.setRotation(i);
try
{
Thread.sleep(5);
}
catch (Exception e)
{
e.printStackTrace();
}
}
睡眠只是在各个阶段之间有一点延迟。
运行代码后,按钮旋转 90 度,但没有逐渐旋转,它只是跳转到 90 度旋转。
我应该如何修改我的代码以显示中间状态?
解决方案
在您的动画文件夹名称中创建 xml 文件rotate_ninety
<rotate
android:duration="2500"
android:interpolator="@android:anim/linear_interpolator"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="infinite"
android:repeatMode="restart"
android:toDegrees="90" />
然后用这段代码替换你的循环
Animation animation = AnimationUtils.loadAnimation(this, R.anim.rotate_ninety);
myButton.startAnimation(animation);
推荐阅读
- javascript - 如何自定义图形使用 highchart 库?
- pytorch - 如果我在 Cuda 上跟踪 PyTorch 网络,我可以在 CPU 上使用它吗?
- .net - 堆栈溢出异常时的可变堆栈大小
- javascript - 如何从 jQuery 纯 js 转换 ajax 请求?
- r - Grep 基于两列中的小数位
- ansible - 计算两个变量之间的天数(一个是设定变量,另一个来自事实)
- c++ - 完美的 Lambda 链接转发
- django - 喜欢这个作者的帖子模型已经存在
- android - 为什么从 1.0.0-alpha 升级到 1.0.0 后出现“ApolloParseException”?
- javascript - 如何使用 Object.entries() 方法 JavaScript 从 1 开始迭代?