在app中添加新手引导视图
来源:互联网 发布:乐股软件手机 编辑:程序博客网 时间:2024/05/12 04:53
在app中添加新手引导视图
原理是用NSUserDefaults来判断是否是第一次启动,如果是第一次启动,则在当前页面添加启动画面。
首先是AppDelegate:
- (BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
if(![[NSUserDefaultsstandardUserDefaults]boolForKey:@"everLaunched"]){
[[NSUserDefaultsstandardUserDefaults]setBool:YESforKey:@"everLaunched"];
[[NSUserDefaultsstandardUserDefaults]setBool:YESforKey:@"firstLaunch"];
NSLog(@"first launch");
}else{
[[NSUserDefaultsstandardUserDefaults]setBool:NOforKey:@"firstLaunch"];
NSLog(@"second launch");
}
returnYES;
}
解释一下StoryBoard的配置,GuideVC是新手引导的ViewController,而ViewController是初始界面,即IntialViewController。第三个未设置控制器。
在GuideVC中,需要写入动画代码,通常是PageControl加几幅图,在此略过,只是加一个button,而且是直接用segue到初视图。
关键部分代码如下:
ViewController.h:
#imp
@classGuideVC;
@interfaceViewController :UIViewController
@property(strong,nonatomic)GuideVC*guideVC;
@end
ViewController.m:
-(void)viewWillAppear:(BOOL)animated
{
if([[NSUserDefaultsstandardUserDefaults]boolForKey:@"firstLaunch"]){
[[NSUserDefaultsstandardUserDefaults]setBool:NOforKey:@"firstLaunch"];
self.guideVC=[self.storyboardinstantiateViewControllerWithIdentifier:@"guide"];
UIView *guideView=self.guideVC.view;
CGRect switchViewFrame=guideView.frame;//得到frame
switchViewFrame.origin.y=0; //将推入视图的y值设置为0,目的是防止出现视图加载下移的情况
guideView.frame=switchViewFrame;
[self.viewinsertSubview:guideViewaboveSubview:self.view];
}
else
{
}
}
转载自:http://yul100887.blog.163.com/blog/static/20033613520147274371897/
- 在app中添加新手引导视图
- 在app中添加新手引导视图
- 在app中添加新手引导视图(XCode4.6)
- app 新手引导功能设计
- APP中透明新手引导页面的实现
- ViewPager+app新手引导页
- App新手引导的设计
- iOS开发中给APP添加引导页
- android首次进入App新手引导
- App项目之新手引导页
- android实现App新手引导功能
- 为app添加引导页面
- app如何添加引导页。
- iOS App中第一次运行添加半透明新手指引
- 在CVIEW视图中添加滚动条
- 在EXCEL中添加多个视图
- 在EXCEL中添加多个视图
- 如何在表视图中添加搜索
- kmp
- 从头认识C—static和extern
- 块设备驱动的写法
- Go by Example: Slices
- easyui表单的验证
- 在app中添加新手引导视图
- TOJ 1018
- 从二维蚂蚁到N维宇宙
- android 使用HttpURLConnection方式提交get/post请求
- 我知道你是爱我的
- 人品计算器
- 虚拟机调试设置
- Windows 下 T-Kernel QEMU模拟器使用
- Vs2012在Linux开发中的应用(12): 编译静态库