美文网首页社交类项目总结
创建程序的主架构

创建程序的主架构

作者: iOS_Cqlee | 来源:发表于2015-12-25 22:01 被阅读148次

Third Chapter

创建程序的主架构

  • 由于每次跳转返回的页面不同,如果不进行统一处理,有时候当前一页的控制器标题过长跳转到别的页面返回会显示过长,这给用户不好的视觉感受,所有一般对跳转页面进行统一处理,如果有特殊情况,可以让导航控制器自身来处理.

  • 统一设置可以通过自定义navigationcontroller,在push之前,进行操作.由于push是把控制器压到栈中,这样我们可以通过子控制器的个数来统一设置跳转返回的样式设置

- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{
    

    // 如果不是第一个push进来的子控制器,需要设置返回键
    if (self.childViewControllers.count > 0 ){
        //要想一个控件显示注意要有尺寸,视情况而定还有颜色
        UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];
        [backBtn setTitle:@"返回" forState:UIControlStateNormal];
        [backBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
        [backBtn setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
        [backBtn setImage:[UIImage imageNamed:@"navigationButtonReturn"] forState:UIControlStateNormal];
        [backBtn setImage:[UIImage imageNamed:@"navigationButtonReturnClick"] forState:UIControlStateHighlighted];
        [backBtn sizeToFit];
        backBtn.contentEdgeInsets = UIEdgeInsetsMake(0, -15, 0, 0);
        [backBtn addTarget:self action:@selector(back) forControlEvents:UIControlEventTouchUpInside];
        viewController.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backBtn];
        //push进来的子控制器隐藏底部tabbar
        viewController.hidesBottomBarWhenPushed = YES;
        
    }
    
    //最好把这push放在这
    [super pushViewController:viewController animated:animated];
    
}



- (void)back{
    [self popViewControllerAnimated:YES];
}


相关文章

  • 创建程序的主架构

    Second Chapter 创建程序的主架构 大多数一般都使用tabBarController嵌套着navgat...

  • 创建程序的主架构

    Third Chapter 创建程序的主架构 由于每次跳转返回的页面不同,如果不进行统一处理,有时候当前一页的控制...

  • 性能操作步骤

    ---创建脚本: (1)选择对应的协议; (2)应用程序类型:B/S架构选Internet应用程序;C/S架构选w...

  • 好程序员大数据培训分享:Storm架构

    好程序员大数据培训:Storm架构,Storm架构:master/slave 主节点:Nimbus 负责在集群上进...

  • ASP.NET MVC5基础 - MVC文件架构

    创建MVC项目 首先,我们使用Visual Studio2019创建一个MVC架构的应用程序(Visual Stu...

  • 第5章 识别架构特性

    识别架构特性是创建架构或确定现有架构有效性的第一步。为给定的问题或应用程序识别正确的架构特性(“ -ilities...

  • 程序员、技术主管和架构师

    程序员、技术主管和架构师 最近在进一步思考程序员的成长,曾经写过一篇《如何快速的成为架构师》,里面写了我对程序员主...

  • jaeger

    jaeger 架构 jaeger-client: 嵌入在应用程序里.负责span的创建以及上报 jaeger-ag...

  • Android的前期(一)学习——布局

    布局的创建——关于布局1.在Android程序中界面是通过布局文件设定的,在每个应用程序创建时都会默认包含一个主界...

  • Spark运行时的内核架构以及架构思考

    一: Spark内核架构 1,Drive是运行程序的时候有main方法,并且会创建SparkContext对象,是...

网友评论

    本文标题:创建程序的主架构

    本文链接:https://www.haomeiwen.com/subject/pyfbhttx.html