- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在为 iPad 制作相机应用。我希望相机应用程序仅在纵向模式下工作。我不得不进行旋转观察,并强制设备像这样使用纵向模式:
UIImagePickerController in Landscape
我认为这是私有(private) API;帖子中的一些用户认为是。
如果是这样,我还可以使用其他什么解决方法来强制叠加层仅保持纵向模式?如果我不添加此代码,它会旋转到纵向和横向模式。
//Is this private?
@interface UIDevice ()
-(void)setOrientation:(UIDeviceOrientation)orientation;
@end
-(IBAction)InitiateCamera
{
overlayview = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 768, 1024)];
...
...
//monitor device rotation
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didRotate:) name:UIDeviceOrientationDidChangeNotification object:nil];
//launch camera
[self presentViewController:picpicker animated:YES completion:nil];
}
- (void) didRotate:(NSNotification *)notification
{
//IS THIS PRIVATE?
//Maintain the camera in portrait orientation
[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationPortrait];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return UIInterfaceOrientationIsPortrait(interfaceOrientation);
}
-(NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationPortrait;
}
最佳答案
请改用此代码。我提交了一个应用程序,它在 iTunes 上获得了批准
- (void) didRotate:(NSNotification *)notification
{
[[UIDevice currentDevice] performSelector:NSSelectorFromString(@"setOrientation:") withObject:(__bridge id)((void*)UIInterfaceOrientationPortrait)];
}
关于ios - 替代私有(private)-[UIDevice setOrientation :] for forcing camera overlay into portrait mode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22132733/
我尝试了 width 和 device-width 的不同组合,但在横屏的 iPhone 上,此代码永远不会将背景变为红色; 当我有超过 1 个媒体查询时,我遇到了问题。看这个JSfiddle exa
我正在使用最新的 xCode 5,我正在尝试为我的通用应用程序设置启动图像。当我选择 Launch images for iPhone 时,一切正常。但是现在,当我尝试为 iPad 选择启动图像时,x
我希望我的 Activity 只在纵向模式下运行,所以我尝试了不同的方法,但都没有用......它们在这里: list :
我有一个计算子网表的应用程序。 但如果我改变方向,TextViews 就是空的。 我为此寻找一个听众。欢迎替代方案:D在监听器中,我会重新计算表格。 最佳答案 在您的 Activity 中使用以下代码
我希望为我的 iPad 纵向网站添加一些响应式网页设计。我有我的主 css 文件 (style.css),然后添加了以下行: 但是,当我尝试将 div 的背景颜色设置为红色或其他颜色然后调整窗口大小
我正在尝试为我的应用程序强制使用“纵向”模式,因为我的应用程序绝对不是为“横向”模式设计的。 在阅读了一些论坛后,我在 list 文件中添加了这些行: 但它不适用于我的设备 (HTC Desire)
在 **AndroidManifest.xml** 我有一个纵向模式的 **Activity**: 我发现在开发期间临时删除 android:screenOrientation="portr
所以我正在制作一个通用设备应用程序,但不确定要为 iPhone 和 iPad 使用哪些尺寸类别,但我正在制作应用程序 Portrait 和 PortraitUpsideDown。 我是对 iPhone
我的应用程序中有一个 View Controller 。让它的第一个 View Controller ,我的第一个 View Controller 在手机中以纵向模式出现,当用户以横向模式旋转手机时,
我有五个 UIButton,我需要设置 UIButton 的框架,使其适合 Landscape 和肖像 不同的大小。但是从下面的代码 viewDidLoad 加载正常但问题是加载堆栈后当我移动到 La
请不要建议我在 1 个版本中进行 ios 4.3-6.0 的轮换是个坏主意,因为我告诉过很多次但没有听我的。 在项目设置中,我已将所有界面方向设置为受支持,只是为了确定。 现在我正在用 iphone4
这个问题在这里已经有了答案: Media queries for tablet min-resolution and max-resolution (3 个答案) 关闭 9 年前。
我尝试在 cocos 2dx 中制作游戏。它在横向模式下工作得很好。我什至在各种设备上检查过它。但是当我切换到肖像模式时,每个场景中的 Sprite 和节点都处于不同的位置,有些甚至不可见。我正在设置
根据 https://developer.mozilla.org/en-US/docs/Web/CSS/@import , list-of-media-queries is a comma-separ
我目前正在为 iOS 7+ 和 XCode 6 开发一款 SpriteKit 游戏。该游戏应始终以纵向模式呈现。到目前为止,我已经在我的 View Controller 中实现了这些方法: - (BO
我正在使用 reportlab 从动态数据中自动生成 pdf 报告。由于内容有时太大而无法以纵向显示,因此我正在尝试切换到横向以显示大型内容。 这是我的报告生成方式: 主要功能: doc = DocT
如果你向下滚动一点,看到这个 Apple Developer Page您会找到“创建备用景观界面”部分。那里描述的基本方法是当方向改变时将不同的 NIB 文件呈现为模态视图。我正在使用 Storybo
这个问题在这里已经有了答案: iOS 7 Interface Orientation (2 个回答) 8年前关闭。 我所有的项目都允许以横向/纵向模式查看应用程序,但是对于一个 View Contro
我正在为 iPhone 和 Android 浏览器开发一个移动网站。 当我摆弄 Iphone 4 和 HTC Desire 时,我发现这两种设备对方向变化的 react 不同。如果我以纵向模式加载网站
我有 10 个窗口。 初始窗口是 loginWindow 我想为 Portrait 和 PortraitUpSideDown 设置方向。对于剩余的窗口,将有横向和纵向方向。 在 Tiapp.xml 中
我是一名优秀的程序员,十分优秀!