zoukankan      html  css  js  c++  java
  • 引导页

       app的引导页每个版本都不一样,看到有人还在用if..else if...else 方法,判断是哪个屏幕设备,然后选择对应图片,每次都要弄半天,一阵蛋疼。想了想,每次更新版本,对所有引导页图片只需按照一个规则命名,就不必在控制器中修改了。

      github地址:https://github.com/zhangmaliang/GuideController

      图片命名规则如下:

        必须确保工程中有相对应的图片,命名规则如下。若有4页,则所有对应图片名称为

        iphone4: 480_0.png、480_1.png、480_2.png、480_3.png

        iphone5: 568_0.png、568_1.png、568_2.png、568_3.png

        iphone6: 667_0.png、667_1.png、667_2.png、667_3.png

       iphone6p: 736_0.png、736_1.png、736_2.png、736_3.png

         支持png和jpg两种图片格式

      下面是外界创建引导控制器的方法,暴露接口有:

    1. 需要设置引导页共有多少页。这个数字要和程序中的图片数量一致

    2. pageCtlY,控制pageController的Y值

    3. 点击右上角提前退出按钮回调方法。本封装随便弄了个按钮样式,可根据需要自行在代码中修改

    4. guide.getTargetView(2)方法返回所需索引对应的视图,可以在得到的视图上面自定义增添内容  

     private func setupGuideController(guide: GuideViewController){
                guide.pages = 4
           guide.pageCtlY = 500
                guide.exitBtnClickedCallBack = {()->() in
                print("点击了退出按钮,一般在这里切换根控制器")
                self.window?.rootViewController = ViewController()
            }
               if let imageView = guide.getTargetView(2){
                let view = UIView(frame: CGRectMake(200, 200, 100, 100))
                view.backgroundColor = UIColor.orangeColor()
                imageView.addSubview(view)
            }
        }              
  • 相关阅读:
    若依启动非常慢
    【转】上火了一吃就好的食物
    实型输入控制
    【转】中国地理的几个概念
    如何在阅读邮件时时保留原有html格式正文的样式
    好的代码不是设计出来的,而是重构出来的
    .net用OLEDB方式操作SqlServer和Sybase
    悬浮框实现
    C#操作xml SelectNodes,SelectSingleNode总是返回NULL 与 xPath 介绍
    ODBC驱动重新注册
  • 原文地址:https://www.cnblogs.com/zhangmaliang/p/5103029.html
Copyright © 2011-2022 走看看