Iphone 模态表示样式中忽略UITableView样式

Iphone 模态表示样式中忽略UITableView样式,iphone,objective-c,ipad,uitableview,uimodalpresentationstyle,Iphone,Objective C,Ipad,Uitableview,Uimodalpresentationstyle,我对UIViewController中的UITableView的样式有一个问题,当它在UINavigationController内部的iPad上以模式显示时。非常简单,我希望表格单元格边框不出现,因此在IB中,我将分隔符样式设置为“无”,将分隔符颜色设置为“清晰颜色”。在NIB中,我的分组表按我希望的方式显示: 在NIB中,tableView连接到文件的所有者,以获取其源和委托。它也被设置为IBOutlet。文件所有者的类名已正确设置为我要加载此NIB的VC。启动时,我创建此VC的一个实例,

我对
UIViewController
中的
UITableView
的样式有一个问题,当它在
UINavigationController
内部的iPad上以模式显示时。非常简单,我希望表格单元格边框不出现,因此在IB中,我将分隔符样式设置为“无”,将分隔符颜色设置为“清晰颜色”。在NIB中,我的分组表按我希望的方式显示:

在NIB中,tableView连接到文件的所有者,以获取其源和委托。它也被设置为IBOutlet。文件所有者的类名已正确设置为我要加载此NIB的VC。启动时,我创建此VC的一个实例,然后创建一个
UINavigationController
的实例。我使用此VC(具有
UITableView
)初始化
UINavigationController
,然后以模式显示
UINavigationController
。在iPad上,我用模态表单呈现方式呈现它

在我的AppDelegate的
应用程序:didFinishLaunchingWithOptions:
方法中,我实例化并保留对VC及其父对象的引用`UINavigationController:

self.loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
self.loginViewNavigationController = [[UINavigationController alloc] initWithRootViewController:self.loginViewController];
然后。。。执行某些逻辑后(仍在AppDelegate中),我以模态方式呈现
UINavigationController

if (self.loginViewNavigationController != nil) {

    if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad)
        self.loginViewNavigationController.modalPresentationStyle = UIModalPresentationFormSheet;

        [self.window.rootViewController presentViewController:self.loginViewNavigationController animated:YES completion:nil];
}
iPhone上的一切都很好,因为我的手机边框不可见:

然而,在iPad上,手机边框清晰可见,我的导航标题样式也不见了(这是另一天的问题):

我真的很想知道为什么
UITableView
忽略了iPad上的分隔符样式。我曾尝试将
modalPresentationStyle
设置为PageSheet和FullScreen,但也遇到了同样的问题。我还尝试在VC的
viewDidLoad
(包含表视图)中设置这些属性,但没有效果。我也尝试过创建一个特定于iPad的NIB“LoginViewController~iPad”,并以这种方式连接所有东西,但这似乎也没有什么不同

这可能是我保留登录VC的方式,它包含
UINavigationController
,但我不能确定,因为这在iPhone上运行得很好

我猜这可能与iPad上的模态演示有关,尽管我搜索并尝试了不同的组合,但我还是搞不清楚到底发生了什么。有什么想法吗

[编辑]

我在使用iOS 6.1、5.1和5.0的模拟器中工作。我在所有版本中都看到相同的问题。我现在坚持使用iOS 6.1,并将向后移动以实现兼容。我还没有移动到设备


谢谢

事实证明,我的UINavigationController子类中有一些错误的样式化代码(糟糕,我知道?),没有正确设置导航栏和表的样式。我已经解决了这个问题,现在UINavigationController看起来应该是了。

你的iPhone和iPad的iOS版本是什么?哎呀。可能应该包括这些信息。我使用的是iOS 6.1(最终还必须支持5.1和5.0)。该问题已被编辑。