android 旋转按钮监听实例
时间: 2023-06-05 08:07:43 浏览: 146
Android事件监听的例子
3星 · 编辑精心推荐
好的,关于 Android 旋转按钮监听的实例,您可以参考以下代码:
1. 在 XML 文件中定义一个 ImageButton 控件,并设置其 background 为一个带箭头的图片,用于表示旋转按钮。
```
<ImageButton
android:id="@+id/rotateBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/rotate_btn"
android:contentDescription="@string/rotateBtnDesc" />
```
2. 在 Activity 或 Fragment 中,声明一个 ImageButton 对象,并设置其点击事件的监听器。
```
ImageButton rotateBtn = findViewById(R.id.rotateBtn);
rotateBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// 处理旋转按钮的点击事件
}
});
```
3. 在 onClick 方法中,可以添加对于旋转按钮点击的处理逻辑,比如旋转屏幕或是旋转 View。
```
public void onClick(View view) {
int currentRotation = getWindowManager().getDefaultDisplay().getRotation();
switch (currentRotation) {
case Surface.ROTATION_0:
// 竖屏,旋转为左横屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
case Surface.ROTATION_90:
// 左横屏,旋转为竖屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
break;
case Surface.ROTATION_180:
// 倒立,旋转为右横屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE);
break;
case Surface.ROTATION_270:
// 右横屏,旋转为竖屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT);
break;
default:
break;
}
}
```
希望以上代码对您有所帮助!
阅读全文