我们发现您的应用不符合Apple iOS Human 界面指南,根据App Store审查指南的要求。
具体来说,我们注意到您的应用仅支持自上而下的变体 纵向方向,但不是自下而上的变化。
支持两种方向的两种变体,每种都有独特的 启动图像,提供最佳用户体验,建议使用 我们知道某些必须运行的应用程序 仅限纵向。在这种情况下,它是适当的 在您的应用程序中支持该方向的两种变体,例如, 主页按钮上下。
解决此问题通常只需要一个简单的和 直接的代码修改。但是,如果您需要帮助, Apple开发人员支持团队可以提供代码级别 协助。
有关详细信息,请查看“支持所有人的目标” iOS人机界面指南的方向部分。
有人能指出一些代码进行故障排除吗?主要的应用程序都很好,但现在在更新我的应用程序第二次被拒绝出于同样的原因。
这是我的代码
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);}
@end
但它正在工作
答案 0 :(得分:4)
因为你说它是一个通用的应用程序,一切都变得清晰。
在iPad上,您必须支持所有界面方向,尤其是所有180度变体。因此,如果你支持肖像,你也必须支持肖像颠倒。如果你支持景观,你也必须支持景观。
在iPhone上,无需支持纵向倒置。这是默认的苹果放入他们的UIViewController模板。
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
// on iPad support all orientations
return YES;
} else {
// on iPhone/iPod support all orientations except Portrait Upside Down
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
return NO;
}
将其添加到您应用中的每个视图控制器中。
答案 1 :(得分:3)
在视图控制器中覆盖shouldAutorotateToInterfaceOrientation:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown);
}
答案 2 :(得分:2)
我建议修复“具体来说,我们注意到您的应用仅支持纵向方向的充值变体,但不支持自下而上的变体。”并且测试它来自IOS5,或者你正在将应用程序放在那里的iOS版本。 这几乎是唯一的问题。
也许发布您的方向代码,我们可以为您解决。
无论如何,像这样的问题太过本地化了。有关针对SO的问题,请阅读FAQ。感谢
答案 3 :(得分:2)
你应该同时接受两个肖像方向:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return UIInterfaceOrientationIsPortrait(interfaceOrientation);
}
此代码同时接受UIInterfaceOrientationPortrait
和UIInterfaceOrientationPortraitUpsideDown
。
修改强>
现在您提到应用程序是通用的,然后是,Apple HIG建议iPad应用程序支持所有方向(4)或至少两个横向或两个纵向(2)。
如果您希望该应用支持iPad上的所有方向:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
return YES;
如果您希望该应用仅支持纵向方向
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
return UIInterfaceOrientationIsPortrait(interfaceOrientation);
答案 4 :(得分:2)
我不确定如何在帖子下面写这个,但是当您将视图上下颠倒时,应用程序是否会旋转?我解释了Apple的回应,因为你目前不支持它。
在“处理视图轮播”下,您必须支持此处引用的枚举类型https://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/UIApplication_Class/Reference/Reference.html#//apple_ref/c/econst/UIInterfaceOrientationPortrait
我相信这样的事情会出现在一个基本的例子中,所以这或多或少都是他们的目标。
祝你好运,欢呼。
/*
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
*/