首页 > 代码库 > [ios]ipad下的splitViewController 让你的APP看起来酷酷的!

[ios]ipad下的splitViewController 让你的APP看起来酷酷的!

在ipad下可以使用splitViewController

splitViewController下包含两个viewController

这是一种将屏幕一分为二的方式。

在水平状态下会出现成两个左右两个区域

我们通常称

左边的为master

右边的为detail

 

如何在master与detail之间交互呢?

当需要传递信息时,只要当前ViewController在splitViewController下

就可以使用

self.splitViewController.viewControllers 来获取存放splitViewController下的ViewController数组。

这个数组是使用nonatomic copy的每次更改controller需要重新赋值[可以忽视这句 没啥用的 你很少会用到]

这个数组只有2个对象

在0号位置的是master

在1号位置的是detail

所以通常使用lastObject

与firstObject来获取当前splitViewController下的master与detail

 

获取到相应的master,detail你就可以随便传输数据啦~~~。

 

 

=================

如何在竖屏幕下通过toolbar的按钮点击打开隐藏的master

 

首先,让你的一个strong或者说会长期存在master内的vc实现<splitViewControllerDeletage>

然后复写几个方法

1个是 是否隐藏。

一个是隐藏时XXX

一个是SHOW时XX

 

因为隐藏时候和show时都会返回一个 toolBarItem 对象.这个对象就是用来控制master显示的。

将这个对象传到detail里面 并设置到detail的toolbar上。

注意:在splitVc里面的detail的toolbar在水平状态下回被隐藏[前提:当前VC的view的一级子类的情况]

通常传递这个toolBarItem会使用委托的方法。让detail实现一个协议然后。通过splitvc 获取detail对象 执行方法把这个

toolBarItem 传过去到detail 并将其添加到detail toolbar上。

[ios]ipad下的splitViewController 让你的APP看起来酷酷的!