IOS 纯代码实现视图控制器的封装

//没有了storyboard就需要通过appdelegate中设置项目入口。

 

1.初始化控制器,侧边栏

 

 

 

解决方案: 设置程序的主入口,添加导航控制器, 将这些页面加入到第三方框架中管理,初始化界面

 

- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {

//设置项目的入口

    self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];

    self.window.backgroundColor = [UIColor whiteColor];

 

    [self initializeLeftMenu];

    

//设置这个程序的根控制器,页面加载后由self.drawViewController管理

    self.window.rootViewController = self.drawViewController ;

    //必写方法,啥意思不懂

    [self.window makeKeyAndVisible];

    return YES;

}

 

-(void)initializeLeftMenu{

//创建一个首页主页,

    XWMainPageViewController *mainVc  = [[XWMainPageViewController alloc]initWithNibName:@"XWMainPageViewController" bundle:nil];

    //创建一个导航控制器将  刚才创建的主界面加进去。

    UINavigationController *navi = [[UINavigationController alloc]initWithRootViewController:mainVc];

    //创建一个侧边栏控制器

    XWLeftViewController *leftVc = [[XWLeftViewController alloc]initWithNibName:@"XWLeftViewController" bundle:nil];    

    //通过第三方框架设置主控制器(将导航控制器中的界面加入进去),和侧边栏。

    self.drawViewController = [[MMDrawerController alloc]initWithCenterViewController:navi leftDrawerViewController:leftVc];

    

    [self.drawViewController  setOpenDrawerGestureModeMask:MMOpenDrawerGestureModePanningCenterView];

    [self.drawViewController  setCloseDrawerGestureModeMask:MMCloseDrawerGestureModePanningCenterView];

    //侧边栏滑动的宽度值

    [self.drawViewController  setMaximumLeftDrawerWidth:255.0];

    [self.drawViewController  setAnimationVelocity:2000];//滑动速度

    [self.drawViewController  setShouldStretchDrawer:NO];

    

    //将导航控制器加入定义好的主控制器中。

    self.mainNavi =navi;

    leftVc.mainNavi = self.mainNavi;

    

    

    

}

你可能感兴趣的:(IOS学习笔记,IOS,代码,操作,刘国斌,优化)