当前位置: 萬仟网 > 移动技术>移动开发>IOS > QQ框架 UITabBarController 静态单元格、Modal

QQ框架 UITabBarController 静态单元格、Modal

2020年10月12日  | 萬仟网移动技术  | 我要评论
UITabBarController跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ、微信等应用UITabBarController的简单使用UITabBarController的使用步骤初始化UITabBarController设置UIWindow的rootViewController为UITabBarController根据具体情况,通过addChildViewCon

UITabBarController

跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ、微信等应用

UITabBarController的简单使用

UITabBarController的使用步骤

  1. 初始化UITabBarController
  2. 设置UIWindow的rootViewController为UITabBarController
  3. 根据具体情况,通过addChildViewController方法添加对应个数的子控制器

UITabBarController的子控制器

UITabBarController添加控制器的方式有2种

添加单个子控制器

- (void)addChildViewController:(UIViewController *)childController; 

设置子控制器数组

@property(nonatomic,copy) NSArray *viewControllers;

UITabBarController的view结构

UITabBar

如果UITabBarController有N个子控制器,那么UITabBar内部就会有N个UITabBarButton作为子控件

如果UITabBarController有4个子控制器,那么UITabBar的结构大致如下图所示

UITabBarButton

UITabBarButton里面显示什么内容,由对应子控制器的tabBarItem属性决定

App主流UI框架结构


 [[[UIView alloc]init] sizeToFit];//根据uiview对象中的内容自己适应大小  与x y 无关
    
    UIImageView* imageView = [[UIImageView alloc]init];
    imageView.image = [UIImage imageNamed:@"setting_about_pic"];

    [imageView sizeToFit];//若没有这句  imageView显示不出来  因为 Imageview没有大小 lable也可使用
    [self.view addSubview:imageView];

editor —> size to fot content

静态单元格可以不写数据源方法

Modal

除了push之外,还有另外一种控制器的切换方式,那就是Modal

任何控制器都能通过Modal的形式展示出来

Modal的默认效果:新控制器从屏幕的最底部往上钻,直到盖住之前的控制器为止

以Modal的形式展示控制器

- (void)presentViewController:(UIViewController *)viewControllerToPresent 
                     animated: (BOOL)flag 
                   completion:(void (^)(void))completion 

关闭当初Modal出来的控制器

- (void)dismissViewControllerAnimated: (BOOL)flag 
                           completion: (void (^)(void))completion;

A控制器Modal到B控制器    presentingViewController代表A控制器  presentedViewController代表B控制器

A跳到B B里执行dismiss 其实是B给A发消息 让A关闭了B

谁负责显示,谁就负责关闭  A弹出来的B,那么A就负责关闭B

在storyboard中 无法关闭B

在storyboard中,点击线  选modal属性

在代码中:

有业务逻辑,用push,否则 用Modal

本文地址:https://blog.csdn.net/qq_41431406/article/details/109026942

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章: