问题标签 [orientation-changes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
154 浏览

iphone - 显示视图时处理方向

当方向改变时,我对 UIView 进行了一些更改。这工作正常。在手机方向已经切换后添加视图时会出现问题。这导致不调用任何旋转方法,因此不给我机会进行更改。

处理这个问题的正确方法是什么,可能在 ViewDidLoad 中?我能在那个时候检测到当前的方向吗?

请记住,我需要做一些小改动,所以我不想加载不同的笔尖或类似的东西

非常感谢你 :)

EDIT* 只是为了澄清:正如我所提到的,当设备方向改变时,视图甚至还没有被实例化。方向更改为横向 -> 用户单击显示另一个视图的按钮 -> 创建并显示这个新视图,但其默认定位是纵向 -> 显示视图时,我在 willAnimateRotationToInterfaceOrientation 方法中重新排列元素处于错误的位置。

0 投票
1 回答
82 浏览

android - 根据方向提供不同的_功能_(不仅仅是布局)?

我有一个监控应用程序,它将一组四个参数显示为动画(例如,它使用温度计图形显示温度)。我还有一个屏幕,可以在图表上绘制所有四个参数值。

我的要求是这样的:

  1. 每当设备处于横向模式时,都应显示图表。
  2. 每当设备返回纵向模式时,应显示较早的动画屏幕。

我想知道是否可以根据方向提供不同的功能。我看到 2 个选项

  1. 覆盖Activity.onConfigurationChanged()- 但是然后呢?我可以setContentView()在这一点上做吗?或者,我可以启动一个不同的活动(一个在单独的、仅横向模式的活动中显示图表的活动)?
  2. 覆盖Application.onConfigurationChanged()方法。但坦率地说,我不知道如何进行此操作。
0 投票
2 回答
4139 浏览

android - Jquery移动方向更改返回相反的值

我目前正在使用 jquery mobile 开发移动网站,但在检测方向变化时遇到了问题。我的移动网站在纵向模式下将方向检测为“横向”,在我的三星 Galaxy 上进行测试时反之亦然。但是,在 iphone n HTC Desire 上正常工作。我确实在一些论坛中发现了将其描述为 Android 错误,并且有人使用 setTimeOut 来解决它。但是我无法使用它来解决问题。不确定这是否是我的语法错误。有人可以启发我吗?提前致谢。

示例代码将不胜感激。

这是我当前的代码:

0 投票
1 回答
446 浏览

javascript - 通过 JavaScript 在 BlackBerry 9800 上检测方向变化

我有一点 JavaScript (jQuery) 来捕捉方向变化并在触发时创建 JS 警报:

链接:http: //jsbin.com/owebax/4

这在 iPhone 上运行良好。它不适用于运行 OS6 的 BlackBerry 9800。

在进行一些谷歌搜索时,似乎问题可能是黑莓手表“窗口”而不是“身体”来改变方向。我将事件绑定到:http window: //jsbin.com/owebax/5

但这仍然不适用于黑莓(现在不再适用于 iPhone。)

有没有人在 BlackBerry 9800 上触发了orientationchange JS 事件?

0 投票
3 回答
2333 浏览

android - 是什么导致 ListView 在方向更改后保持其滚动位置?

我有一个包含 ListView 的活动。我使用 SimpleCursorAdapter 填充列表视图。当我运行应用程序时,我可以在 ListView 中手动向下滚动(例如到第 10 项)。然后,当我旋转手机时 - 这会破坏并重新创建我的 Activity,并且 ListView 会按预期重新制作。

但是,在我的手机上旋转后,重新创建的 Activity 显示我的 ListView 仍然在我的手动滚动位置(在这个例子中,第 10 行)。我很确定我的代码没有调用 ListView.setSelection(int) 那么是什么导致了 ListView 的重新定位?

这可能看起来很方便,但它不是我想要的。它是 ListViews 行为的一部分吗?如果是这样,如何停止/覆盖这个重新定位?

0 投票
1 回答
159 浏览

iphone - 将一个视图控制器视图添加为子视图时,方向方法没有响应

我正在开发一个应用程序,在该应用程序中单击按钮时,我必须将一个类控制器视图显示为子视图。我已将我的视图控制器添加为子视图,它工作正常。

现在,当我旋转设备方向时,我的子视图没有响应该方向意味着我的子视图没有旋转。

请建议我应该怎么做才能解决这个方向问题。

提前致谢。

0 投票
1 回答
578 浏览

android - Android方向更改故障

在相当快地改变屏幕方向时,或者当背景出现重物时,我遇到了奇怪的问题。当我打电话setContentView(R.layout.main);onConfigurationChanged(我自己处理方向更改),在屏幕旋转片刻后,android将布局设置为与方向相反。例如 - 当您更改方向布局更改时,例如Portrait>Landscape,但有时,在我的情况下,它会像这样Portrait>Portrait(当手机已经处于横向位置时)>Landscape

有时您甚至没有注意到这一点,有时屏幕会在一秒钟内缩小到大约 1/3。好吧,这并不是什么大不了的事,但在我的活动中,我有 Coverflow 小部件(基于 Gallery),为了让它在大多数屏幕上看起来不错,我根据父容器大小(在onSizeChanged小部件中)设置图像大小,以及何时方向更改如上所述,coverflow 小部件选择了错误的大小。

我现在看到的唯一方法是在方向更改时调用 onCreate(我不能这样做,因为在线填充了大量的 UI),或者在初始化 UI 时设置延迟(这很难看)。

所以我想知道,是否有任何回调setContentView()或其他任何东西,所以我可以知道布局何时真正准备好,所以我可以初始化 UI。

或者也许还有另一种方法?

PS:由于某种原因,此故障主要发生在 Desire HD 上。

0 投票
3 回答
6526 浏览

android - 当进度条在android中旋转时如何停止更改方向

我有一个注册屏幕,用户在其中输入所有注册详细信息,当用户单击“注册”按钮时,我正在显示进度条(进度条开始旋转),然后将用户带到主屏幕。如果用户旋转当进度条旋转时手机,进度条被关闭。我希望方向不要从纵向变为横向,反之亦然,当进度条可见时(意味着它正在旋转)。如何在进度条时停止方向变化正在旋转?任何帮助将不胜感激。

0 投票
2 回答
1065 浏览

android - 处理方向变化的状态

如何处理所有方向事件发生的状态?

就像是:

  • 开始之前(保存一些屏幕状态)
  • 发生时(动画目的)
  • 发生后(加载屏幕状态)

我知道onConfigurationChanged可以处理方向变化。我试过这个:

在 saveState 上,我将在 Gallery 上查看的 lastIndex 存储在 SharedPreferences 上。在 loadState 上,我从 SharedPreferences 中获取 lastIndex 并将其设置为 Gallery 中的当前位置。

我也尝试将 loadState 放在 onResume 方法中,但在方向更改发生后它不会被调用。

0 投票
1 回答
547 浏览

javascript - iPad 方向更改事件处理程序中的 Javascript 变量已损坏

我正在为 iPad 开发一个 Html 和 Javascript 目录页面滑块,它显示一页纵向和两页横向。

用于维护目录状态的两个变量在事件处理程序中的每个方向变化时被操纵。

当我快速折腾和转动 iPad 时,变量已损坏。当我像通常那样操作它时它们很好(也就是说,相当慢)。

我尝试使用一个locked变量来防止处理程序在尚未完成时运行,即如果移动 Safari 在方向更改时中断 Javascript 执行:

然而,情况似乎从来都不是这样。处理程序总是在再次调用之前完成。

因此,变量如何被破坏?

有任何想法吗?