美文网首页
版本新特性

版本新特性

作者: geekAppke | 来源:发表于2018-04-13 11:25 被阅读7次
if(![[NSUserDefaults standardUserDefaults] boolForKey:@"firstStart"]){
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstStart"];
    NSLog(@"第一次启动");
}else{
    NSLog(@"不是第一次启动");
}

+ (NSString *)appVersion
{
    NSString *versionValue = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
    return versionValue;
}
  • Info.plis→Bundle version当前版本号
    • [NSBundle mainBundle].infoDictionary
  • 版本号和沙盒里存储不一致时,新版本
    • 把软件卸载
    • 修改plist版本号



- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreenmainScreen] bounds]];
    
    // 取出沙盒中上一次使用软件的版本号
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    NSString *lastVersion = [defaults stringForKey:@"lastVersion"];
    
    // 获得当前软件的版本号
    NSString *currentVersion = [NSBundle mainBundle].infoDictionary[@"CFBundleVersion"];
    
    if ([currentVersion isEqualToString:lastVersion]) {
        // 显示状态栏
        application.statusBarHidden = NO;
        self.window.rootViewController = [[MgTabBarViewController alloc] init];
    } else { // 新版本
        self.window.rootViewController = [[MGNewfeatureViewController alloc] init];
        
        // 存储新版本
        [defaults setObject:currentVersion forKey:@"lastVersion"];
    }
    [self.window makeKeyAndVisible];
    return YES;
}
@interface MGNewfeatureViewController() <UIScrollViewDelegate>
@property (nonatomic, weak) UIPageControl *pageControl;
@end
 
#pragma mark scrollView的控制器
/**
 *  只要UIScrollView滚动了,就自动调用
 */
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    // 1.取出水平方向上滚动的距离
    double offsetX = scrollView.contentOffset.x;
   
    // 2.求出页码
    double pageDouble = offsetX / scrollView.frame.size.width;
    // 谁占主动,就显示谁
    int pageInt = (int)(pageDouble + 0.5);
//    MGLog(@"------%f-----%d", pageDouble, pageInt);
 
    self.pageControl.currentPage = pageInt;
}

相关文章

  • 版本新特性

    Info.plis→Bundle version当前版本号[NSBundle mainBundle].infoDi...

  • 学习HM微博项目第3天

    步骤:自定义tabBar -> 版本新特性01-搭载界面 -> 版本新特性02-按钮的使用细节 ->...

  • Java Servlet API

    Servlet 支持的版本 Servlet 3.0 新特性详解 Servlet 3.0 新特性概述Servlet ...

  • Android版本新特性

    Android 9.0版本 新功能 Android 9.0的新功能包括:谷歌统一推送升级、深度集成Project ...

  • Android版本新特性

    Android 5.0 (api21)名字L 1.MaterialDesign设计风格 2.添加控件CardVie...

  • Android 版本新特性

    1、Android 4.x 1、新锁屏界面:Android4.0重新设计了锁屏幕UI,下方的解锁虚拟按键向周围发射...

  • 快速入门SpringBoot2.0教程 (一)

    一、SpringBoot2.x依赖环境和版本新特性说明 简介:讲解新版本依赖环境和springboot2新特性概述...

  • 启动界面之新特性

    1、创建window分类2、沙盒进行版本判断3、新特性控制器切换 创建window分类,判断版本 新特性控制器

  • React 16.6.X版本的更新功能

    React发布了16.6版本,在此版本中带来了一些非常有用的新特性。主要的新特性包括: React.lazy() ...

  • jdk13特性

    JDK 13 新特性讲解课程 第一章 JDK 13新特性介绍 1.1 JDK 各版本主要特性回顾 JDK Vers...

网友评论

      本文标题:版本新特性

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