zoukankan      html  css  js  c++  java
  • 新特性展示

    1.新特性声明时候的两种方法
     
    //    //添加window的根视图控制器,UITabBarController
    //    
    //    if (![[NSUserDefaults standardUserDefaults]boolForKey:@"1"]) {
    //        [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"1"];
    //        NewFeatureController * newFeature=[[NewFeatureController alloc] init];
    //        self.window.rootViewController=newFeature;
    //        [newFeature release];
    //        
    //    }
    //    
    //    else{
    //        TarbarViewController * tabBarVC = [[TarbarViewController alloc] init];
    //        self.window.rootViewController = tabBarVC;
    //        [tabBarVC release];
    //        
    //    }
        
        NSString *key = @"CFBundleVersion";
        // 取出沙盒中存储的上次使用软件的版本号
        NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
        NSString *lastVersion = [defaults stringForKey:key];
        
        // 获得当前软件的版本号
        NSString *currentVersion = [NSBundle mainBundle].infoDictionary[key];
        if ([currentVersion isEqualToString:lastVersion]) {
            // 显示状态栏
    //        [UIApplication sharedApplication].statusBarHidden = NO;
            [UIApplication sharedApplication].keyWindow.rootViewController = [[TarbarViewController alloc] init];
        } else { // 新版本
            [UIApplication sharedApplication].keyWindow.rootViewController = [[NewFeatureController alloc] init];
            // 存储新版本
            [defaults setObject:currentVersion forKey:key];
            [defaults synchronize];
        }
     
    2.新特性的代码
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view.
        
        // 1.添加UISrollView
        [self setupScrollView];
        
        // 2.添加pageControl
        [self setupPageControl];
        
    }
    
    /**
     *  添加pageControl
     */
    - (void)setupPageControl
    {
        // 1.添加
        UIPageControl *pageControl = [[UIPageControl alloc] init];
        pageControl.numberOfPages = IWNewfeatureImageCount;
        CGFloat centerX = self.view.frame.size.width * 0.5;
        CGFloat centerY = self.view.frame.size.height - 30;
        pageControl.center = CGPointMake(centerX, centerY);
        pageControl.bounds = CGRectMake(0, 0, 100, 30);
        pageControl.userInteractionEnabled = NO;
        [self.view addSubview:pageControl];
        self.pageControl = pageControl;
        
        // 2.设置圆点的颜色
        pageControl.currentPageIndicatorTintColor = SZColor(253, 98, 42);
        pageControl.pageIndicatorTintColor = SZColor(189, 189, 189);
        [pageControl release];
    }
    
    /**
     *  添加UISrollView
     */
    - (void)setupScrollView
    {
        UIScrollView *scrollView = [[UIScrollView alloc] init];
        scrollView.frame = self.view.bounds;
        scrollView.delegate = self;
        [self.view addSubview:scrollView];
        
        // 2.添加图片
        CGFloat imageW = scrollView.frame.size.width;
        CGFloat imageH = scrollView.frame.size.height;
        for (int index = 0; index<IWNewfeatureImageCount; index++) {
            UIImageView *imageView = [[UIImageView alloc] init];
            
            // 设置图片
            NSString *name = nil;
            name = [NSString stringWithFormat:@"login_introduce_bg%d.jpg", index + 1];
            
            
            imageView.image = [UIImage imageNamed:name];
            
            // 设置frame
            CGFloat imageX = index * imageW;
            imageView.frame = CGRectMake(imageX, 0, imageW, imageH);
            
            [scrollView addSubview:imageView];
            
            // 在最后一个图片上面添加按钮
            if (index == IWNewfeatureImageCount - 1) {
                [self setupLastImageView:imageView];
            }
        }
        
        // 3.设置滚动的内容尺寸
        scrollView.contentSize = CGSizeMake(imageW * IWNewfeatureImageCount, 0);
        scrollView.showsHorizontalScrollIndicator = NO;
        scrollView.pagingEnabled = YES;
        scrollView.bounces = NO;
    }
    
    - (void)setupLastImageView:(UIImageView *)imageView
    {
        // 0.让imageView能跟用户交互
        imageView.userInteractionEnabled = YES;
        
        // 1.添加开始按钮
        UIButton *startButton = [[UIButton alloc] init];
        startButton.backgroundColor = [UIColor redColor];
        [startButton setBackgroundImage:[UIImage imageNamed:@"new_feature_finish_button"] forState:UIControlStateNormal];
        [startButton setBackgroundImage:[UIImage imageNamed:@"new_feature_finish_button_highlighted"] forState:UIControlStateHighlighted];
        
        // 2.设置frame
        CGFloat centerX = imageView.frame.size.width * 0.5;
        CGFloat centerY = imageView.frame.size.height * 0.6;
        startButton.center = CGPointMake(centerX, centerY);
        startButton.bounds = (CGRect){CGPointZero, startButton.currentBackgroundImage.size};
            
        // 3.设置文字
        [startButton setTitle:@"开始旅行" forState:UIControlStateNormal];
        [startButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
        [startButton addTarget:self action:@selector(start) forControlEvents:UIControlEventTouchUpInside];
        [imageView addSubview:startButton];
        
        // 4.添加checkbox
        UIButton *checkbox = [[UIButton alloc] init];
        checkbox.selected = NO;
        [checkbox setTitle:@"分享给大家" forState:UIControlStateNormal];
        [checkbox setImage:[UIImage imageNamed:@"new_feature_share_false"] forState:UIControlStateNormal];
        [checkbox setImage:[UIImage imageNamed:@"new_feature_share_true"] forState:UIControlStateSelected];
        checkbox.bounds = CGRectMake(0, 0, 200, 50);
        CGFloat checkboxCenterX = centerX;
        CGFloat checkboxCenterY = imageView.frame.size.height * 0.5;
        checkbox.center = CGPointMake(checkboxCenterX, checkboxCenterY);
        [checkbox setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
        checkbox.titleLabel.font = [UIFont systemFontOfSize:15];
        [checkbox addTarget:self action:@selector(checkboxClick:) forControlEvents:UIControlEventTouchUpInside];
        //    checkbox.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);
        checkbox.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, 10);
        //    checkbox.contentEdgeInsets = UIEdgeInsetsMake(10, 10, 10, 10);
        [imageView addSubview:checkbox];
    }
    
    /**
     *  开始微博
     */
    - (void)start
    {
        // 显示状态栏
        [UIApplication sharedApplication].statusBarHidden = NO;
        // 切换窗口的根控制器
        TarbarViewController * tabbarVC = [[TarbarViewController alloc] init];
        self.view.window.rootViewController = tabbarVC;
        [tabbarVC release];
    }
    
    - (void)checkboxClick:(UIButton *)checkbox
    {
        
        checkbox.selected = !checkbox.isSelected;
        if (checkbox.selected == YES) {
         //这里是示例用了友盟的分享
            [UMSocialSnsService presentSnsIconSheetView:self appKey:@"5475c280fd98c52865000704" shareText:@"图话旅行,更浪漫的旅行" shareImage:[UIImage imageNamed:@"shared.jpg"] shareToSnsNames:[NSArray arrayWithObjects:UMShareToSina,UMShareToDouban,UMShareToTencent,UMShareToRenren, nil] delegate:nil];
        }
    }
    
    /**
     *  只要UIScrollView滚动了,就会调用
     *
     */
    - (void)scrollViewDidScroll:(UIScrollView *)scrollView
    {
        // 1.取出水平方向上滚动的距离
        CGFloat offsetX = scrollView.contentOffset.x;
        
        // 2.求出页码
        double pageDouble = offsetX / scrollView.frame.size.width;
        int pageInt = (int)(pageDouble + 0.5);
        self.pageControl.currentPage = pageInt;
    }
    
    
    
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
  • 相关阅读:
    uva 12096
    uva 705
    uva 657
    uva 10129
    uva 816 BFS求最短路的经典问题……
    uva 1103
    uva 699
    这是昨天的内容,就这样慢慢整吧,然后,荒废了好多时间啊!!
    今天就这么乱糟糟的过啦~刚刚接触html,就稍微写了一下,明天加油,今天直接贴图
    uva 548 tree
  • 原文地址:https://www.cnblogs.com/beijingxiaoguo/p/4152531.html
Copyright © 2011-2022 走看看