问题标签 [device-orientation]

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 投票
0 回答
282 浏览

javascript - 关于方向变化的 JavaScript 警报在 Android 上不断重复

当移动设备的方向发生变化时,此代码会创建警报。它适用于我的 iPhone,但在我的 Android 上,警报不断触发,有效地使页面不可用。代码在 dom 就绪上运行。

有人知道为什么会这样吗?万一有一个使用它的解决方案,我在这个网站上使用 jQuery。谢谢

更新 - 这段代码做同样的事情:

0 投票
2 回答
911 浏览

iphone - 仅允许在 UITabViewController 中将一个选项卡的方向更改为横向

这可能吗?我怎么能做到这一点?

0 投票
1 回答
1438 浏览

android - 如何使用 getorientation 和 getrotation 矩阵计算俯仰、滚动

我想获得滚动和俯仰值来检测设备在 4 个方向上的倾斜。我想使用 getorientation 和 getrotation 矩阵来做到这一点。我该怎么做?甚至链接也会有所帮助。

0 投票
2 回答
1386 浏览

html - 为什么将移动设备从横向旋转到纵向后网页会放大?

我有一个针对在手机中查看而优化的网页。

我正在使用检测设备宽度并将视口宽度设置为该值的viewport元标记。<meta name = "viewport" content = "width = device-width">这意味着我的网页可以在移动浏览器中正确加载,而不是看起来可笑地缩小。

当我在我的手机(三星 Galaxy S2)上以纵向模式加载页面时,它看起来很好,我旋转到横向,它看起来很好,但是如果我再次旋转回纵向,页面会稍微放大。我要么必须缩小,要么水平滚动。

为什么我的移动浏览器会这样做,我该如何阻止它发生?

有关正在发生的事情的视觉帮助,请参见屏幕截图。

在此处输入图像描述

0 投票
2 回答
1242 浏览

mobile-safari - 元视口地狱

我设计了一个响应式网站并使用 Compass Susy 构建了一个原型。

我在 iPad 和 iPhone 上的 Mobile Safari 上遇到的问题是,当我以纵向模式加载网站,然后旋转到横向时,整个布局可能会向右跳 30%(它还会放大缩放以适应480 像素横向宽度)。

我已经尝试了几件事,我注意到将元视口标签从更改 <meta content="width=device-width, initial-scale=1" name="viewport"><meta content="width=device-width" name="viewport">(删除初始比例)不会发生跳转。

但是,如果没有该属性,我的手机布局太小,即使在最初的纵向视图中也是如此。在两个方向上,它都与右边的排水沟齐平。

我已经尝试扩大 Susy 网格中的列,虽然它明显使其他平台上的布局更宽,但在手机上仍然会缩小以显示右侧的排水沟。所以这是某种视口问题。

使用初始比例设置,在 Android 上它适合,在旋转到横向时它不会跳跃,但保持 320 像素(左右边距)。

我需要在这里做什么?

0 投票
7 回答
50782 浏览

orientation - 在 iPad/iPhone 上在纵向和横向之间切换时响应站点被放大

我在这里使用 Twitter Bootstrap 构建了一个响应式网站:http: //zarin.me/cce/

响应式设计在 iPad 和 iPhone 上效果很好,但是当我将设备从纵向翻转到横向时,网站会放大而不是适应屏幕(捏住屏幕有效)。

我错过了什么?这是视口问题吗?这是我在我的唯一视口代码:

提前致谢!

0 投票
2 回答
1215 浏览

objective-c - 如何设置默认方向

可能重复:
如何在 iPhone 上启动后设置方向

我将如何设置应用程序的默认方向,例如初始屏幕所在的方向,以及应用程序在自动旋转之前所在的方向?

0 投票
9 回答
14177 浏览

android - 当方向改变时使用选项卡重新加载活动时,片段被初始化两次

当我更改设备的方向时,我在重新加载带有选项卡和片段的活动时遇到问题。

情况如下:

我有一个在操作栏中有 3 个选项卡的活动。FrameLayout每个选项卡在主视图中加载不同的片段。如果我不改变设备的方向,一切正常。但是当我这样做时,Android 会尝试初始化当前选择的片段两次,这会产生以下错误:

以下是产生错误的步骤顺序:

  1. 我加载活动,选择选项卡 nr 2。并更改设备的方向。
  2. Android 销毁由 tab nr 2 加载的片段的活动和实例(从现在开始,“片段 2”)。然后它继续创建活动和片段的新实例。
  3. 在里面Activity.onCreate(),我将第一个选项卡添加到操作栏。当我这样做时,此选项卡会自动选择。它可能代表未来的问题,但我现在不介意。onTabSelected被调用并创建并加载第一个片段的新实例(参见下面的代码)。
  4. 我添加了所有其他选项卡而没有触发任何事件,这很好。
  5. 我打电话ActionBar.selectTab(myTab)选择 Tab nr 2。
  6. onTabUnselected()为第一个选项卡调用,然后onTabSelected()为第二个选项卡调用。此序列替换片段 2 实例的当前片段(参见下面的代码)。
  7. 接下来,Fragment.onCreateView()在 Fragment 2 实例上调用,并且片段布局变得膨胀。
  8. 这是问题所在。Android 调用onCreate(),然后onCreateView()在片段实例 ONCE AGAIN 上调用,当我尝试膨胀(第二次)布局时会产生异常。

显然问题是Android两次初始化片段,但我不知道为什么。

当我重新加载活动时,我尝试不选择第二个选项卡,但是第二个片段无论如何都会被初始化并且它没有显示(因为我没有选择它的选项卡)。

我发现了这个问题:Android Fragments recreated onorientation change

用户问的问题基本上和我一样,但我不喜欢选择的答案(这只是一种工作方式)。必须有某种方法可以在没有android:configChanges技巧的情况下使其正常工作。

如果不清楚,我想知道如何阻止片段的重新创建或避免片段的双重初始化。很高兴知道为什么会发生这种情况。:P

以下是相关代码:

Fragment 的代码无关紧要,它只是返回onCreateView()方法覆盖的膨胀视图。

0 投票
1 回答
838 浏览

iphone - 正确旋转的程序化 UIView

我一直在以编程方式完成几乎所有的用户界面,并在界面生成器中执行了一些细微的更改。但是所有 UI 的 99% 都是在代码中完成的,因为我觉得这样做可以获得一定的灵活性方式。

但是我现在在处理设备的旋转时遇到了问题,因为我有几个 UIViews 被添加为子视图我面临一个旋转问题,因为这是我通常声明视图的方式

并且由于设备旋转时这个固定的 CGRectMake 视图保持相同的大小并且正确地适合视图的方向。

所以我研究了一个在我看来很糟糕的解决方案。我在其中制作了几个视图,用户可以从中选择选项,然后我将它们动画出来。但是他们需要能够处理任何一个中的加载纵向或横向,然后如果在加载它们时,它们需要能够处理从任一方向到另一个方向的旋转。

这就是我所做的观点之一。

在这个例子中,我有两个视图横向和纵向,显然每个名称都是针对它们各自的方向.. 上面的逻辑遵循这个

我想知道是否有比经历所有这些麻烦更简单的方法!我仍然相当缺乏经验,所以这是我最好的尝试.. 我希望那里的人知道一种更简单的方法,而不是必须做所有这些腿部工作才能将视图添加到其他视图中,因为子视图可​​以正确调整方向

任何帮助将不胜感激!我很绝望哈哈:)

0 投票
1 回答
474 浏览

xcode - 转回纵向时,shouldAutorotateToInterfaceOrientation 不会触发

这是事件:

每当设备旋转时,我都会设置我UIScrollView的,以便里面的东西总是“正确”的一面朝上。

这有效,除非设备从横向旋转回纵向(右侧向上),断点验证shouldAutorotateToInterfaceOrientation没有被调用。因此,当设备转回纵向时,UIScrollView内容是横向的。我怎样才能解决这个问题?