java - Android:以编程方式设置方向需要时间,直到布局实际发生变化

标签 java android orientation

当我调用:

activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

需要 2-3 秒才能在屏幕上实际更改布局。

问题是,是否有一些事件或属性可以获取屏幕上布局更改的信息?当我获得属性(property)时:

context.getResources().getConfiguration().orientation

它已经设置为新方向。但屏幕上的实际 View 是旧方向。 2-3 秒后它会发生变化。 (还尝试了屏幕宽度和高度比例,与方向相同)。

那么,有没有办法检测屏幕上的布局是否实际发生更改?

最佳答案

您可以使用

    import android.content.res.Configuration;

      public void onConfigurationChanged(Configuration newConfig) 
  {

         super.onConfigurationChanged(newConfig);
         //

  }

关于java - Android:以编程方式设置方向需要时间,直到布局实际发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13212092/

相关文章:

java - 限制对存储文件的访问

java - 如何在java程序中运行unix enq命令

android - 如何在 Android 电视应用程序中将 View 设置为可聚焦?

ios - Swift:根据设备方向更改 View /屏幕。什么是 "efficiency wise"更好的选择?

c++ - opengl中的相机无法正常工作

java - 同步访问相同文件、并发访问不同文件

java - Spring 启动 : Configure a url prefix for RestControllers

java - Android 上的动画

android - 如何使 EditText 中的文本垂直(Android)

javascript - 如何在平板电脑和手机的 Android 设备方向更改时获得正确的窗口宽度