2011-03-09 21 views
1

我想制作一个应用程序,它具有标签栏。在每个TabBar中,我想使用两个视图,即左侧的表视图和另一侧的详细视图。但是,TableView应该坚持纵向和横向(与iPad中的设置应用程序相同)。Ipad中的splitViewController,不能隐藏在肖像中

我已经看到一些建议使用私有API这是一个风险使用。

[splitViewController setHidesMasterViewInPortrait:NO]; 

和一些教程像马特联想的https://github.com/mattgemmell/MGSplitViewController 但我并不需要这么多的定制。

任何提示或正确的方向教程将不胜感激。

下面的教程在4.2破看来: -

http://blog.blackwhale.at/2010/04/your-first-ipad-split-view-application/

回答

7

iOS 5的正式支持以下,我相信这是你想达到的效果:

- (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation { return NO; }

+0

感谢您的回复。我会检查这个虽然 – Ekra 2012-02-23 11:40:01

+0

这在最近的版本中工作!这个答案太隐蔽了,它确实需要传播开来。这个问题已经被问及数次,所有答案都说使用MGSplitViewController,但现在我们终于可以使用更简单的方法,现在Apple已经添加了功能! – Highrule 2012-06-20 15:32:18

0

有时回我试图实现类似的事情。在尝试了Matt的代码之后,并没有尝试创建一个类别,我意识到唯一的方法就是使用两个自定义视图(以Apple不会拒绝你的应用程序的方式)。请参阅this问题。

+0

感谢您的回复。如果我们要创建2个自定义视图,那么我们可以将2个导航栏放在同一个屏幕中? – Ekra 2011-03-10 06:09:25

+0

对不起,迟到了,我以为我已经回答了。因为一切都是自定义的,你可以做任何你想做的事情。但是,当然你不能在一个控制器上使用这两个导航栏。 – Vin 2011-03-11 18:54:45

1

是否使用[splitviewcontroller setMasterHidesDisplay:NO]导致Apple拒绝AppStore上的应用程序?

+0

是的,它不允许在iOS 5.0以下。我需要检查iOS 5 – Ekra 2012-02-23 11:41:13

0

是的。 他们拒绝我的应用程序使用此命令 ([splitviewcontroller setMasterHidesDisplay:NO])