java - 如何在android中的非主要 Activity 中设置屏幕方向

标签 java android screen-orientation

我是android开发的初学者

我想从非主要 Activity 设置屏幕方向

我有两个类:-

  1. 公共(public)类MainActivity扩展AppCompatActivity

MainActivity中有这个方法:-

public void setOrintation(){

if (My_Values.STABLE_MODE_ENABLE == 1) {

        int orientation = this.getRequestedOrientation();
        int rotation = ((WindowManager) this.getSystemService(
                Context.WINDOW_SERVICE)).getDefaultDisplay().getRotation();
        switch (rotation) {
            case Surface.ROTATION_0:
                orientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT;
                break;
            case Surface.ROTATION_90:
                orientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE;
                break;
            case Surface.ROTATION_180:
                orientation = ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT;
                break;
            default:
                orientation = ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE;
                break;
        }
        this.setRequestedOrientation(orientation);
    } else {
        this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
    }
}
  • public class My_View extends View Implements View.OnTouchListener(非内部类)
  • 那么我无法调用MainActivity setOrintation()方法

    如何做到这一点?

    最佳答案

    也许你可以尝试使用setOrintation()方法创建接口(interface),并让MainActivity实现这个接口(interface)。在 My_View 对象中,您必须将 Activity 作为此接口(interface)发送

    关于java - 如何在android中的非主要 Activity 中设置屏幕方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49131979/

    相关文章:

    ios - 如何只为一个 Controller 解锁方向?

    java - 方向更改时 fragment 重新启动

    java - 文件上传到 postgres 数据库

    java - 配置 Tomcat 以便我可以将 JSP 页面连接到 MySQL

    android - Android 上 AccelerateDecelerateInterpolator 的逆函数

    java - 安卓 : Navigate to another fragment

    java - 更改屏幕方向时重置操作

    java - Bean创建异常: Error creating bean with name 'sessionFactory'

    java - 为没有自己的 rss 的网站生成 rss feed 的方法是什么?

    android - 关于 android.intent.action.BOOT_COMPLETED