您的位置:首页 > 其它

引导页

2015-07-22 13:26 381 查看
AppDelegate动态加载StoryBoard

2013-01-22 17:47 2287人阅读 评论(0) 收藏 举报

(BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary)launchOptions

{

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];


UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@”MainStoryboard” bundle:[NSBundlemainBundle]];

self.window.rootViewController=[storyboard instantiateInitialViewController];

[self.window makeKeyAndVisible];

return YES;


}

 AppDelegate动态加载StoryBoard
2013-01-22 17:47 2287人阅读 评论(0) 收藏 举报

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions

{

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:[NSBundlemainBundle]];

self.window.rootViewController=[storyboard instantiateInitialViewController]; [self.window makeKeyAndVisible]; return YES;
}


这是加载stortboard的做法

这个功能的重点就是在如何判断应用是第一次启动的. 其实很简单

我们只需要在一个类里面写好用户引导页面  基本上都是使用UIScrollView 来实现,

新建一个继承于UIViewController的类 命名为 UserGuideViewController ,

在UserGuideViewController.m 写

1 - (void)viewDidLoad
2 {
3     [super viewDidLoad];
4     // Do any additional setup after loading the view.
5     self.view.backgroundColor = [UIColor redColor];
6
7     [self initGuide];   //加载新用户指导页面
8 }
9
10 - (void)initGuide
11 {
12     UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 640)];
13     [scrollView setContentSize:CGSizeMake(1280, 0)];
14     [scrollView setPagingEnabled:YES];  //视图整页显示
15     //    [scrollView setBounces:NO]; //避免弹跳效果,避免把根视图露出来
16
17     UIImageView *imageview = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
18     [imageview setImage:[UIImage imageNamed:@"0.png"]];
19     [scrollView addSubview:imageview];
20     [imageview release];
21
22     UIImageView *imageview1 = [[UIImageView alloc] initWithFrame:CGRectMake(320, 0, 320, 460)];
23     [imageview1 setImage:[UIImage imageNamed:@"1.png"]];
24     [scrollView addSubview:imageview1];
25     [imageview1 release];
26
27     UIImageView *imageview2 = [[UIImageView alloc] initWithFrame:CGRectMake(640, 0, 320, 460)];
28     [imageview2 setImage:[UIImage imageNamed:@"2.png"]];
29     [scrollView addSubview:imageview2];
30     [imageview2 release];
31
32     UIImageView *imageview3 = [[UIImageView alloc] initWithFrame:CGRectMake(960, 0, 320, 460)];
33     [imageview3 setImage:[UIImage imageNamed:@"3.png"]];
34     imageview3.userInteractionEnabled = YES;    //打开imageview3的用户交互;否则下面的button无法响应
35     [scrollView addSubview:imageview3];
36     [imageview3 release];
37
38     UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];//在imageview3上加载一个透明的button
39     [button setTitle:nil forState:UIControlStateNormal];
40     [button setFrame:CGRectMake(46, 371, 230, 37)];
41     [button addTarget:self action:@selector(firstpressed) forControlEvents:UIControlEventTouchUpInside];
42     [imageview3 addSubview:button];
43
44     [self.view addSubview:scrollView];
45     [scrollView release];
46 }

button的方法

1 - (void)firstpressed
2 {
3     [self presentModalViewController:[[[WeiBoViewController alloc] init] autorelease] animated:YES];  //点击button跳转到根视图
4 }

至于添加button是因为我的用户引导最后一个页面有一个画上去的button,写着 开始使用  我在上面添加一个透明的button 用以实现调用方法


这是初始化引导页的方法

下面是俺的做法

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];// Override point for customization after application launch.
//判断是不是第一次启动应用
if(![[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"])
{
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstLaunch"];
NSLog(@"第一次启动");
//如果是第一次启动的话,使用UserGuideViewController (用户引导页面) 作为根视图
ViewController *userGuideViewController = [[ViewController alloc] init];
self.window.rootViewController = userGuideViewController;

}
else
{
NSLog(@"不是第一次启动");
//如果不是第一次启动的话,使用LoginViewController作为根视图

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];

self.window.rootViewController=[storyboard instantiateInitialViewController];

}

// self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: