问题标签 [uideviceorientation]
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.
objective-c - 图像没有填满整个 uiimageview 的宽度和高度
我有以下代码:
当以横向模式拍摄图像时,无论是向左还是向右,uiimageview 中呈现的图像都不会填满整个 frame.size 并且总是“短”
有人可以在我的代码中修复/添加什么吗?
ios - UIDeviceOrientationDidChangeNotification 多次调用
UIDeviceOrientationDidChangeNotification 在设备改变方向时多次调用。我不确定为什么会发生这种情况或如何解决它。
我想要做的是保持滚动视图的 contentoffset 相同,因此当用户旋转屏幕时,应用程序会保留他们所在的页面。
奇怪的是,当我第一次像我想要的那样执行代码时旋转屏幕。但之后每次代码都会执行多次,最终 contentoffset 设置为 0。
这就是我所拥有的。
在方向更改时,我更改“int方向”的值,然后调用 loadview 来更改视图的大小。然后我调用 viewdidload 来获取正确的 contentoffset
编辑:
我发现了问题。我正在做的是创建另一个 self.view 实例而不是覆盖这个实例。有没有简单的方法来破坏这个视图并重新初始化它?
编辑2:
找到了解决办法。根据 jsds 的说明,我停止调用 loadview 和 viewdidload。而是将我的 loadview 中的所有代码移动到我从 loadview 调用的另一个函数中。这段代码所做的只是实例化 UI (initview) 对象并根据方向将它们放置在正确的位置。
然后我创建另一个从视图中删除所有子视图的函数。然后在方向改变时,我调用这个函数和我的 initview 来销毁所有子视图,然后在方向改变时重新创建它们。
ios7 - 仅旋转 uiviewcontroller 的子视图
我阅读了其他问题,但对于我可以对这个问题做些什么并不是很清楚。还是决定问问。
所以我有一个 UIViewController,其中我阻止了自动旋转。
我调出添加到控制器的子视图之一。现在,我旋转设备。这个 UIView 应该改变方向,我将使用自动布局来支持这个视图上的所有方向。
这可能吗?
我尝试的是,监听设备方向的变化,然后将方向发送到子视图,然后可能transform
会思考,但这并不准确,而且可能需要做很多工作。
有什么线索吗?
ios - UIDeviceOrientationDidChangeNotification 返回错误的方向
我有一个UIScrollView
带有子视图的子视图,我必须在方向更改时更新其框架。我一直在iPhone
模拟器上运行该程序,但看起来UIDeviceOrientationDidChangeNotification
它没有返回设备的正确方向。UIInterfaceOrientationPortrait
当我旋转时它会返回,UIInterfaceOrientationLandscapeLeft/Right
反之亦然。我没有正确使用它还是必须使用其他处理方向变化的方法?
ios - 苹果可以拒绝强制改变方向吗?
为了强制改变设备方向,我从这里获取代码
但苹果可以拒绝使用的应用程序setOrientation:
吗?有一些经验吗?
或者可能有人有100%的工作并且不能被Apple拒绝,解决方案?
好的,谢谢,我会试试这个片段。
ios - 当方向锁定打开且应用程序仅支持纵向时,如何检测设备方向
我遇到的问题是,当用户使用我们的应用程序拍照时,使用AVCaptureSession
,我无法确定他们是在纵向还是横向模式下拍摄照片。我们的应用程序仅支持肖像,并且我在使用手机时保持方向锁定,因此我正在尝试构建一个解决方案,假设其他人可能会这样做。
我研究过使用[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]
,但是当方向锁定打开时,没有收到任何通知。我知道这个功能是可行的,因为当我的手机打开方向锁定时,基本相机应用和 Google Hangouts 应用中的相机可以检测到旋转(取消和 Flash 按钮上的动画很明显)。
我最好的选择是使用加速度计并检测手机旋转的角度吗?一个旧的答案,Detect iPhone screenorientation ,很明显,以这种方式检测角度很容易做到(显然将答案调整为使用 Core Motion 而不是 UIAccelerometer),但我很好奇是否还有另一种方法可以做它。
ios - iPhone 界面方向不正确
在 iPhone 上 - 我的第一个ViewController
支持所有界面方向。不过,最初的行为是,当我启动应用程序时,主屏幕ViewController
应该始终是纵向的。
为了克服在应用启动时手机处于横向的情况,我创建了一个ViewController
只支持纵向的假人,从它启动应用程序并立即推送 main ViewController
。确实主要ViewController
是纵向的,但是在执行时:
self.interfaceOrientation
结果是横向(如手机的方向)。
我希望它会返回肖像,这会导致问题。
在这种情况下,我怎样才能获得设备的真实方向ViewController
而不是设备?
objective-c - 旧项目的 iOS8 测试版中的相机无法正确旋转
我正在开发一个使用旧 X-Code 版本创建的 iOS 应用程序,因此它在 MainWindow.xib 中有窗口。最近在 iOS8 Beta 版本中运行这个项目时,我遇到了一个问题:窗口没有横向旋转。所以我在 MainWindow.xib 中添加了另一个窗口。我设置了 if 条件来检查操作系统版本,对于较旧的 iOS 版本,我使用以前创建的窗口,但对于 iOS8,我使用新添加的横向窗口。我已经解决了这个问题。除相机外,整个应用程序工作正常。
以下是屏幕截图。
在 LandscapeMode 中(它工作正常):
在 PortraitMode(一旦相机被加载,我已经旋转它,这里其他控件旋转正常,但相机过度旋转不正确):
以横向模式加载相机后,我旋转了设备,控件正常旋转但相机屏幕没有旋转,它仍处于纵向模式。这可能是由于 Appdelegate 中的窗口所致。
有什么解决办法吗?
提前致谢。
ios - Get device current orientation (App Extension)
How to get device current orientation in an App Extension, I have tried below two methods but no success.
It always return UIDeviceOrientationUnknown
/li>It shows red message that ‘sharedApplication’ is not available on iOS (App Extension)
/li>I also add an observer but it not getting called.
/li>
So now how can anyone get current device orientation.
ios - 在 UIInputViewController 子类中检测旋转。键盘扩展
我一直在开发自定义键盘扩展,我需要在设备旋转后以编程方式更新一些约束。我一直在尝试在我的 UIInputViewController 子类中检测用户界面旋转,但没有成功。设备旋转时不会调用这些方法:
-(void)willTransitionToTraitCollection:(UITraitCollection *)newCollection withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>) coordinator {
NSLog(@"Orientation changed");
}
-(void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator {
NSLog(@"Orientation changed");
}
我也尝试过观察UIDeviceOrientationDidChangeNotification
,但它也不起作用。
有谁知道如何检测旋转UIInputViewController
?