类似ipad上的split,左边的tableview控制右边显示不同的视图

类似ipad上的split,左边的tableview控制右边显示不同的视图

       最近要做一个项目,这个项目在ipad上运行,需要页面横向放置,首先,先记录一下怎么让程序运行后页面横向显示,我设置了一个基类的视图控制器,下边就称作base页面。

这个控制器里,填写一段这样的代码,所有的页面都继承自这个视图控制器,起到所有的页面都是横向展示

#pragma mark -

#pragma mark -继承自这个类,以便于页面自动就会横屏


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation{

    

    return (toInterfaceOrientation == UIInterfaceOrientationLandscapeRight) || (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft);

}


为了达到这个效果,我最开始的时候打算在页面右边放置view,而不是viewController。因为view controller会自动的创建一个全屏的view,导致不成功。但是一个项目都是用view搭建的,难免感觉不妥当,怕给自己挖坑,变得越挖越深,最后自己都埋不上了。但是,没办法啊,项目催的紧,于是,还是拿view做了一下。发现其实view确实可以达到这个效果,但是自己内心总是感觉不踏实。于是,在各种开发群,还有一些认识的人各种问。终于,还是有位大神给我一个正确的指导,看来还是自己理解的东西不够深刻,特此记录一下

继续在base页面加约束,为了让所有的页面都是靠在左边导航的一侧的页面,添加下边代码

- (void)loadView{

    

   // [super loadView];  主意这里不要调用,不然会创建一个全屏的view

   

    UIView *view = [UIView createView];

    view.frame = CGRectMake(295/2.f, 64, kScreenWidth - 295/2.f, kScreenHeight - 64);

    

    self.view = customView;

}


原来是因为每次调用[super loadView],所以才创建的全屏的view,所以我们不调用这个,自己创建一下视图,达到想创建的视图的大小,实现后的效果就是


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值