亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

iOS開發之路--微博新特性頁面

2020-02-19 15:58:19
字體:
來源:轉載
供稿:網友

BeyondAppDelegate.m

//// BeyondAppDelegate.m// 20_帥哥no微博//// Created by beyond on 14-8-3.// Copyright (c) 2014年 com.beyond. All rights reserved.//#import "BeyondAppDelegate.h"#import "BeyondViewController.h"#import "NewFeatureViewController.h"#import "OauthViewController.h"#define kVersionCodeKey (NSString *)kCFBundleVersionKey@implementation BeyondAppDelegate// 應用最先執行的方法- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{  // 1,創建窗口  self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];  // 2,設置窗口的背景色  self.window.backgroundColor = [UIColor whiteColor];  // 3,調用自定義方法,判斷是不是第一次使用本版本的app,如果是第一次使用,則將窗口的根控制器設為了NewFeature控制器,否則 就直接讓主控制器成為了窗口的根控制器  [self versionCodeCheck];  // 4,讓窗口可見  [self.window makeKeyAndVisible];  return YES;}// 自定義方法,判斷是不是第一次使用本版本的app,如果是第一次使用,則將窗口的根控制器設為了NewFeature控制器,否則 就直接讓主控制器成為了窗口的根控制器- (void)versionCodeCheck{  // 1,使用用戶偏好,從沙盒中取出舊的版本號  NSString *oldVersionCode = [[NSUserDefaults standardUserDefaults] objectForKey:kVersionCodeKey];  NSString *currentVersionCode = [[[NSBundle mainBundle]infoDictionary] objectForKey:kVersionCodeKey];   // 根據版本號的比較結果 進入不同的控制器  //[self stepIntoViewController:currentVersionCode oldVersion:oldVersionCode];  //return;  #warning block test -===============以下內容,和其中調用的方法,僅用于block調用測試  if ([currentVersionCode isEqualToString:oldVersionCode]) {  //if(0){    [self enterBeyondVC];  } else {    // 關鍵 ,并且保存版本號    [[NSUserDefaults standardUserDefaults]setObject:currentVersionCode forKey:kVersionCodeKey];        // 進入新特性控制器    NewFeatureViewController *newVC = [[NewFeatureViewController alloc]init];    newVC.startBlock = ^(BOOL isSelected){      log(@"%d",isSelected);      [self enterBeyondVC];    };    self.window.rootViewController = newVC;  }}#warning block test- (void) enterBeyondVC{  // 1,如果進行過Oauth授權,則直接進入主控制器,否則 進行Oauth授權控制器  if (1) {    OauthViewController *oauthVC = [[OauthViewController alloc]init];    self.window.rootViewController = oauthVC;    return;  }      // 進入主控制器  BeyondViewController *vc =[[BeyondViewController alloc]init];  self.window.rootViewController = vc;}- (void)stepIntoViewController:(NSString *)curVersion oldVersion:(NSString *)oldVersion{  // 比較新舊版本號  UIViewController *rootViewController = nil;#warning 測試新特性的view  if ([curVersion isEqualToString:oldVersion]) {   //  if (0){    // 說明不是第一次運行,直接實例化主控制器,將主控制器設置為窗口的根控制器    // 進入主控制器(主界面之前 先把狀態欄,恢復) ios 7 無效    // [[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];    rootViewController = [[BeyondViewController alloc]init];  } else {    // 說明是第一次運行,進入新特性控制器,將新特性控制器設置為窗口的根控制器,并且保存版本號    // 進入新特性控制器(新特性界面之前 先把狀態欄,隱藏) ios 7 無效    // [UIApplication sharedApplication].statusBarHidden = YES;    // [[UIApplication sharedApplication]setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];    rootViewController = [[NewFeatureViewController alloc]init];    // 關鍵 ,并且保存版本號    [[NSUserDefaults standardUserDefaults]setObject:curVersion forKey:kVersionCodeKey];  }  // 設置窗口的根控制器,為相應的控制器  self.window.rootViewController = rootViewController;}@end

NewFeatureViewController.h

//// NewFeatureViewController.h// 20_帥哥no微博//// Created by beyond on 14-8-3.// Copyright (c) 2014年 com.beyond. All rights reserved.// 只使用一次,版本新特性控制器,在第一次運行本版本時啟用#import @interface NewFeatureViewController : UIViewController// 定義一個block作為成員變量,點擊開始按鈕時,初始化主控制器,讓其成為窗口的根控制器// block用copy@property (nonatomic,copy) void(^startBlock)(BOOL isShare);@end

NewFeatureViewController.m

//// NewFeatureViewController.m// 20_帥哥no微博//// Created by beyond on 14-8-3.// Copyright (c) 2014年 com.beyond. All rights reserved.// 只使用一次,版本新特性控制器,在第一次運行本版本時啟用/* 寫在前面: 當一個控件不顯示 的時候,檢查下面三個屬性: 沒有寬度和高度 x y 坐標不正確 沒有添加到父控件中 當一個控制不能點擊的時候,檢查下面個屬性: 自己的userinteraction = no 父控件的userinteraction = no 控件本身已經超出了它所在的控制器范圍 pageController的高度不能更改,那么就可以置高度為0,其他控件同理  4,居中顯示 的標準步驟:先設置center,再設置bounds  5,切換按鈕圖片可以通過切換按鈕的狀態來完成  normal:普通 highlighted : 高亮(人為長按的時候) disabled :失效(通過代碼控制) selected : 選中 (通過代碼控制)  */#import "NewFeatureViewController.h"#define kPicNum 4#warning viewSize 要改成kWinSize#define viewSize self.view.bounds.size@interface NewFeatureViewController (){  // 頁面指示控制器  UIPageControl *_pageControl;    // 因為開啟按鈕的點擊事件中需要分享按鈕的選中狀態  UIButton *_shareBtn;}@end@implementation NewFeatureViewController- (BOOL)prefersStatusBarHidden{  // 在LoadView之前 還要先  NSLog(@"prefers bar hidden");  return YES;  }- (void)loadView{  NSLog(@"load view");  // 新特性,讓imageView成為控制器的view,然后才再ImageView上面添加一層scrollView  UIImageView *imgView = [[UIImageView alloc]init];  // 設置控制器view(即imgView)的尺寸為全屏  imgView.frame = [UIScreen mainScreen].bounds;  NSLog(@"%@",NSStringFromCGRect(imgView.frame));  // 使用分類中的方法,如果是iphone5,加載 -568h的圖片  imgView.image = [UIImage fullScrennImageNamed:@"new_feature_background.png"];    // 讓控制器的view可以與用戶交互  imgView.userInteractionEnabled = YES;  // 直接讓imgeView成為控制器的view  self.view = imgView;}- (void)viewDidLoad{  [super viewDidLoad];  NSLog(@"view did load ");  // 1,調用自定義方法,加載UIScrollView,并且批量添加UIImageView,每個ImageView中放一張圖片  [self addUIScrollView];    // 2,調用自定義方法,加載UIPageControl  [self addUIPageControl];}// 自定義方法,加載UIScrollView,并且批量添加UIImageView,每個ImageView中放一張圖片- (void) addUIScrollView{  // 1.加載UIScrollView,并且批量添加UIImageView,每個ImageView中放一張圖片  UIScrollView *scrollView = [[UIScrollView alloc] init];  // 顯示的可視區域大小  scrollView.frame = self.view.bounds;  // 水平滾動條  scrollView.showsHorizontalScrollIndicator = NO;  // 按可視區域進行分頁  scrollView.pagingEnabled = YES;  // 滾動的范圍  scrollView.contentSize = CGSizeMake(kPicNum * viewSize.width, 0);  // 代理 可以監聽滾動的各類事件  scrollView.delegate = self;  // 添加到self.view即ImageView  [self.view addSubview:scrollView];    // 2,根據索引添加kPicNum張圖片排列而成的kPicNum個imageView到scrollView里面  for (int i = 0; i

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美二区在线播放| 另类图片亚洲另类| 色yeye香蕉凹凸一区二区av| 91精品国产精品| 亚洲专区在线视频| 久久久精品国产亚洲| 久久夜色精品国产| 国语自产在线不卡| 97在线视频免费| 欧美激情欧美激情在线五月| 欧美wwwwww| 日韩一区av在线| 精品久久久久久久久久久久久久| 欧美成人网在线| 国产成人精品在线视频| 国产亚洲免费的视频看| 色黄久久久久久| 国产精品入口免费视| 亚洲一区二区黄| 麻豆乱码国产一区二区三区| 中文字幕亚洲专区| 97视频在线观看免费高清完整版在线观看| 精品国产91乱高清在线观看| 欧美高清第一页| 亚洲第一天堂av| 欧美制服第一页| 欧美区二区三区| 久久精品国产96久久久香蕉| 欧美一级片久久久久久久| 隔壁老王国产在线精品| 亚洲欧美成人在线| 欧美特级www| 午夜美女久久久久爽久久| 疯狂做受xxxx欧美肥白少妇| 高清一区二区三区四区五区| 91精品国产综合久久香蕉| 日韩一区二区精品视频| 亚洲国产精品yw在线观看| 国产欧美日韩中文字幕| 色小说视频一区| 国产成人一区二区三区电影| 日韩欧美中文字幕在线观看| 欧美精品成人在线| 91九色综合久久| 欧美综合一区第一页| 中文字幕久久久| 日韩欧美精品网站| 欧美视频在线观看免费| 欧美日韩亚洲系列| 日韩精品在线观看网站| 欧美乱大交xxxxx| 激情久久av一区av二区av三区| 欧美另类精品xxxx孕妇| 成人欧美一区二区三区在线湿哒哒| 最近2019年中文视频免费在线观看| 国产亚洲精品久久久久久| 最近中文字幕mv在线一区二区三区四区| 日韩成人激情影院| 综合网中文字幕| 国产精品美女久久| 国产精品偷伦一区二区| 亚洲最大激情中文字幕| 成人性生交大片免费观看嘿嘿视频| 久久精品国产一区二区三区| 国产91色在线| 欧美性在线视频| 中文字幕亚洲欧美一区二区三区| 97婷婷涩涩精品一区| 秋霞午夜一区二区| 日韩av在线免播放器| 久久免费国产精品1| 国产精品美女在线| 中文字幕在线日韩| 在线观看不卡av| 日本午夜人人精品| 91九色国产视频| 久久精品国产2020观看福利| 国产视频精品免费播放| 亚洲精品国产精品国自产观看浪潮| 亚洲人av在线影院| 欧美成人免费大片| 在线国产精品播放| 最近免费中文字幕视频2019| 精品欧美一区二区三区| 国产成人综合一区二区三区| 久久精品视频播放| 中文字幕亚洲欧美| 久久视频在线免费观看| 精品国产一区二区三区久久狼5月| 在线观看视频亚洲| 亚洲欧洲一区二区三区在线观看| 久久久久久18| 国产成人久久久精品一区| 91久久久久久久久久久久久| 992tv成人免费视频| 最好看的2019的中文字幕视频| 国产视频福利一区| 精品视频久久久久久| 欧美精品日韩三级| 欧美综合在线观看| 日韩av在线导航| 日韩精品在线观| 亚洲国产成人精品一区二区| 亚洲欧美国产精品久久久久久久| 欧美性20hd另类| 欧美综合国产精品久久丁香| 欧美亚洲一区在线| 国模精品一区二区三区色天香| 欧美刺激性大交免费视频| 日韩精品视频在线播放| 日韩精品在线播放| 久久九九精品99国产精品| 日韩美女在线观看| 91日本在线观看| 亚洲成色777777在线观看影院| 中文字幕一区二区精品| 国产一区二区三区在线免费观看| 日韩精品日韩在线观看| 一区二区在线免费视频| 91青草视频久久| 欧美日韩中文字幕| 成人亚洲欧美一区二区三区| 色无极影院亚洲| 欧美性猛xxx| 国产精品xxx视频| 在线免费观看羞羞视频一区二区| 欧美寡妇偷汉性猛交| 久久久久久久97| 亚洲精品第一页| 日韩欧美国产激情| 欧美性猛交xxxx久久久| 欧日韩在线观看| 国内精品久久久久影院优| 中文字幕久久久av一区| 欧美精品在线播放| 国产精品免费在线免费| 亚洲成人av资源网| 日韩精品欧美国产精品忘忧草| 日韩欧美成人免费视频| 国产精品一区二区电影| 日韩精品视频在线播放| 日韩精品免费在线| 日韩电影网在线| 亚洲久久久久久久久久久| 全色精品综合影院| 国产成人欧美在线观看| 91久久久在线| 亚洲国产精品va在看黑人| 亚洲免费视频观看| 亚洲黄页网在线观看| 国产ts人妖一区二区三区| 国产精品久久电影观看| 91精品综合视频| 国产精品自产拍高潮在线观看| 国语自产精品视频在线看| 少妇激情综合网| 亚洲精品视频久久| 亚洲美女av电影| 精品久久久久久久久久国产| 色综合亚洲精品激情狠狠| 欧美成人激情视频免费观看| 欧美日韩亚洲一区二区三区| 日韩亚洲一区二区| 亚洲一区二区三区久久|