我希望在设备方向改变时,ImageButton能够旋转。它应该旋转90度、180度、270度和360度,并且其相对布局应保持稳定,只有按钮会移动。如何做到这一点?我已经进行了一些研究,但没有找到任何可以帮助我的东西。
我希望在设备方向改变时,ImageButton能够旋转。它应该旋转90度、180度、270度和360度,并且其相对布局应保持稳定,只有按钮会移动。如何做到这一点?我已经进行了一些研究,但没有找到任何可以帮助我的东西。
onConfigurationChanged()
方法来检测方向变化,示例如下:@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
//call your rotate method here
}
当您检测到屏幕方向变化事件后,您可以像这样在按钮上执行动画旋转:
public void rotateView(View view) {
Button button = (Button) view.findViewById(R.id.some_button);
RotateAnimation rotateAnimation = new RotateAnimation(0, 360);
rotateAnimation.setDuration(2000);
button.startAnimation(rotateAnimation);
}
RotateAnimation
的构造函数中设置起始和结束角度,然后设置动画持续时间(以毫秒为单位)。然后,只需在要进行动画的视图上调用 startAnimation()
。super.onConfigurationChanged(newConfig)
只会执行它以前的操作,不使用它会导致应用崩溃(至少在KitKat上) 。 - horxCoder