文档章节

app引导页的简单实现

大四喜
 大四喜
发布于 2015/02/26 22:28
字数 271
阅读 28
收藏 0

首先将引导页子类化出来,新建一个类。然后在AppDelegate.m中 添加如下代码

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

    // Override point for customization after application launch.

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

    self.window.backgroundColor = [UIColor whiteColor];

    [self.window makeKeyAndVisible];

    NSUserDefaults* userDefaults = [NSUserDefaults standardUserDefaults];

    if([userDefaults objectForKey:@"FirstLoad"] == nil)

    {

      [userDefaults setBool:NO forKey:@"FirstLoad"];

        //显示引导页

        self.window.rootViewController = [[LeadViewController alloc] init];

    }else

    {

     self.window.rootViewController = [[LanuchViewController alloc] init];

     }

    return YES;

}

其中LeadViewController是新建的引导页面, LanuchViewController是程序的主页面,我们应用 NSUserDefaults类来储存本地的数据,当我们第一次加载程序时其为空,加载启动界面,之后再次启动程序时不为空,就可以正常加载程序的主页面了。

当引导页面显示完成。可以在引导页添加一个按钮,添加一个点击事件

- (void)pushView

{

    UIStoryboard *story  = [UIStoryboard storyboardWithName:@"Main" bundle:nil];

     UIViewController *mainCol =  [story instantiateInitialViewController];

    self.view.window.rootViewController = mainCol;

}

点击后加载 storyboard中的内容。这样引导页的效果就实现了。


© 著作权归作者所有

共有 人打赏支持
大四喜
粉丝 0
博文 8
码字总数 1378
作品 0
杭州
产品体验的首要:快速使用核心功能

  思考一个问题,用户从点击你的APP,到他使用到他需要的功能,花了多少时间?你的APP设计,能够让他尽量少花时间么?还是正好相反?   有些时候,产品体验变成了一件花哨的事情,一句卖萌...

程序员客栈
2016/05/07
14
0
iOS最好用的引导页

  最近项目结束的时候又要改引导页,之前写的启动页改起来太麻烦了,所以就直接封装一个,功能可能还不是很完善,但是感觉用起来也比较方便,在这里和大家分享一下。   这是github的下载...

红角羚羊
2017/04/01
0
0
Sagit.Framework For IOS 开发框架入门开发教程2:一行代码实现引导页

前言: 开篇比较简单:Sagit.Framework For IOS 开发框架入门开发教程1:框架下载与环境配置 第二篇教程之前写了一半,感觉不太好写,而且内容单纯介绍API,要说的很多,又枯燥乏味。 所以那...

路过秋天
2017/12/18
0
0
怎么让引导不再是无用小透明?

原文出处:腾讯ISUX - 里奥 前言 在接触一款新应用的时候用户常常会看到一些引导页,但在操作的时候直接当透明的就快速滑过或跳过了,这种时候,大家一定会有“这些引导好无用啊”的无力感,...

腾讯ISUX - 里奥
2015/11/19
0
0
ZWIntroductionViewController

简单实用的app引导页,能后在图片之间渐变切换,最后进入主VC. [Code4App.com]

红薯
2015/03/11
297
0

没有更多内容

加载失败,请刷新页面

加载更多

记Structured Streaming 2.3.1的OOM排查过程

记Structured Streaming 2.3.1的OOM排查过程 缘起 最近在使用Structured Streaming开发一套自助配置SQL的来生成流式作业的平台,在测试的过程中发现有些作业长时间运行后会有Executor端的OOM...

纳兰清风
21分钟前
0
0
通过 websocket 连接 openfire

通过 websocket 连接 openfire 一、简介 老版本是需要安装websocket插件的。之前版本就不说了。 二、 引入XML与JSON互转的js <script src="lib/XML/ObjTree.js"></script><script src="lib......

lwenhao
25分钟前
1
0
MicropPython的学习,如何从0到1?

是Java还是C++ ? 是Go还是Python? 你为你最爱或者最熟悉的编程语言打Call了吗? Python在国外是一门非常热门的编程语言,近些年在国内也被发掘与追捧, Python的开放、简洁、黏合正符合了现发...

bodasisiter
26分钟前
0
0
Django框架17: Celery的使用

Celery介绍 1.什么是Celery Celery是一个python模块,它在官网的定义:Celery is asynchronous task queue/job based on distributed message passing. It is focused on real-time operatio......

代码打碟手
32分钟前
0
0
poi的excel解析工具类

import org.apache.commons.lang.StringUtils;import org.apache.commons.lang.time.DateFormatUtils;import org.apache.commons.lang.time.DateUtils;import org.apache.poi.hssf.use......

Sheav
36分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部