• 在进入新版本 的时候,进行推送引导


    xx效果

    具体代码如下
    首先新建XMGPushGuideView类
     
    XMGPushGuideView.h 文件
     
    #import <UIKit/UIKit.h>

    @interface XMGPushGuideView : UIView
    /** 加载xib */
    +(instancetype)guideView;
    /** 判断当前的版本号,确定是加载推荐引导页 */
    +(void)show;
    @end
     
     
     
    XMGPushGuideView.m 文件
     
    #import "XMGPushGuideView.h"

    @implementation XMGPushGuideView

    +(instancetype)guideView{

        return [[[NSBundle mainBundle] loadNibNamed:NSStringFromClass(self) owner:nil options:nil] lastObject];
    }
    - (IBAction)close {
        [self removeFromSuperview];
    }

    +(void)show{
       
        NSString *key=@"CFBundleShortVersionString";
       
        // 获得当前软件的版本号
        NSString *currentVersion = [NSBundle mainBundle].infoDictionary[key];
       
        //    获得沙盒中的存储的版本号
        NSString *sanboxVersion=[[NSUserDefaults standardUserDefaults] stringForKey:key];
       
        if (![currentVersion isEqualToString:sanboxVersion]) {
           
    //        获得当前的window
            UIWindow *window=[UIApplication sharedApplication].keyWindow;

           
            XMGPushGuideView *guideView=[XMGPushGuideView guideView];
            guideView.frame=window.bounds;
            [window addSubview:guideView];
            //        存储版本号
            [[NSUserDefaults standardUserDefaults] setObject:currentVersion forKey:key];
            //       马上把版本号存储到沙盒中
            [[NSUserDefaults standardUserDefaults] synchronize];
        }
       
    }
    @end
     
     
    而在AppDelegate.m文件
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        // Override point for customization after application launch.
       
    //    创建窗口
        self.window=[[UIWindow alloc]init];
        self.window.frame=[UIScreen mainScreen].bounds;
       
    //    设置窗口的跟控制器
         self.window.rootViewController=[[XMGTabBarController alloc]init];

       
    //    显示窗口
        [self.window makeKeyAndVisible];
       


    //    显示推送引导
        [XMGPushGuideView show];
       
       
        return YES;
    }
     
     
     
     
     
  • 相关阅读:
    js获取页面所有搜索条件
    js计算两经纬度之间的距离
    .NET MVC 序列化与反序列化
    微信浏览器内禁止页面回退返回
    Winform组合ComboBox和TreeView实现ComboTreeView
    如何在Oracle触发器中使用查询语句
    DevExpress Winform:纯代码方式创建PopupMenu
    DevExpress GridView 鼠标热点追踪 高亮显示行
    Task.Wait and “Inlining”
    重置Visual Studio 2017的配置
  • 原文地址:https://www.cnblogs.com/qianLL/p/5529637.html
Copyright © 2020-2023  润新知