android - 动画布局的 setRotation 属性
问题描述
可以使用RotateAnimation
android中的对象旋转视图,但是使用此类似乎只能在视觉上旋转视图,例如单击旋转视图(使用除中心以外的枢轴旋转)实际上不会单击视图,视图仍处于其原始位置但只是视觉上的其他地方。
因此,为了将视图连同它的子视图一起旋转到一个新位置,我找到了使用的解决方案layout.setRotation(angle)
,在我的情况下layout
,constraintLayout
我将不得不旋转它180
。
但是,问题是,我无法对此进行动画处理,我想从0
到180
度进行平滑过渡,但它只是捕捉到 180 度。我怎样才能动画这个属性或可能的旋转?
解决方案
在约束布局内的 .xml 文件中添加以下代码。
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"/>
MainActivity.java :
ConstraintLayout constraintLayout = findViewById(R.id.layout);
constraintLayout.animate().rotation(100).setDuration(2000);
唯一的问题是您忘记在 .rotation() 之前添加 .animate() ,这就是它不起作用的原因。
推荐阅读
- ios - 在 iOS 上使用 Objective-C 将实时麦克风数据流式传输到其他设备?
- amazon-web-services - AWS 中的性能测试:如何保证带宽
- javascript - 有没有直接的方法在 jQuery 中获得最小的 HTML 节点结构?
- flutter - 直接从我的颤振应用程序拨打电话
- php - 是否可以从 php 执行 cgi 脚本?
- git - 安装 zsh 后无法通过 ssh 提交到 github 远程
- node.js - 如何构建可以将文件发送到以进行进一步操作的 Web 应用程序?
- python - TypeError:不期望类型'
' 关于 Ironpython 包安装 - python - 具有最小值和最大值的正态分布中的 Python 随机数生成器
- qt - 是否可以从已编译的可执行文件中读取 .qrc Qt 资源文件?