iPhone程序Splash启动画面

方法一:

 

官方SDK最简单的方法

最简单的方法就是做一个全屏的欢迎页的图片,把它命名为Default.png,然后放在Xcode工程的Resource里面。 执行就可以看到你的这个默认图像在程序完全加载之前显示在屏幕上。

但是这个方法有个问题,如果你的程序很快载入了,这个图片会立刻消失,导致还没有看清楚图片上的内容。 而且有些内容虽然程序已经载入了,但是有些程序需要的资源是要从服务器上加载的,所以直接进入程序,用户还是无法使用这个应用。

方法二:

 

1. 将你需要的splash界面的图片,存成Default.png
2. 在XXXAppDelegate.m程序中,插入如下代码:

 

C代码   收藏代码
  1. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  
  2. {  
  3.     self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];  
  4.       
  5.     //开始;  
  6.     [NSThread sleepForTimeInterval:3.0];  
  7.     //结束;  
  8.       
  9.     // Override point for customization after application launch.  
  10.     self.window.backgroundColor=[UIColor redColor];//加个背景红色  
  11.       
  12.     if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {  
  13.         self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil] autorelease];  
  14.     } else {  
  15.         self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil] autorelease];  
  16.     }  
  17.     self.window.rootViewController = self.viewController;  
  18.     [self.window makeKeyAndVisible];  
  19.     return YES;  
  20. }  

 

  [NSThread sleepForTimeInterval:3.0]是splash页面停留3秒后消失。

方法三:

找个带有动画效果,原理:

添加一张和Default.png一样的图片,对这个图片进行动画,从而实现Default动画的渐变消失的效果。

 

C代码   收藏代码
  1. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  
  2. {  
  3.     self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];  
  4.     // Override point for customization after application launch.  
  5.     //self.window.backgroundColor=[UIColor redColor];//加个背景红色  
  6.       
  7.     if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {  
  8.         self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil] autorelease];  
  9.     } else {  
  10.         self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil] autorelease];  
  11.     }  
  12.     self.window.rootViewController = self.viewController;  
  13.     [self.window makeKeyAndVisible];  
  14.       
  15.     //开始  
  16.     UIImageView *splashView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0, 320, 480)];    
  17.     splashView.image = [UIImage imageNamed:@"Default.png"];    
  18.     [self.window addSubview:splashView];    
  19.     [self.window bringSubviewToFront:splashView];  //放到最顶层;  
  20.     [UIView beginAnimations:nil context:nil];    
  21.     [UIView setAnimationDuration:3.0];    
  22.     [UIView setAnimationTransition:UIViewAnimationTransitionNone forView: self.window cache:YES];    
  23.     [UIView setAnimationDelegate:self];     
  24.     [UIView setAnimationDidStopSelector:@selector(startupAnimationDone:finished:context:)];    
  25.     splashView.alpha = 0.0;    
  26.     splashView.frame = CGRectMake(-60, -85, 440, 635);    
  27.     [UIView commitAnimations];    
  28.     [splashView release];  
  29.     //结束;  
  30.     
  31.     return YES;  
  32. }  

 

方法四:

 

 

 

 

 

 

 

 

 

 

ps:

让Splash启动画面全屏:

1.在<APP>-info.list文件中,加上“Status bar is initially hidden”选项,选择yes
2在程序里面添加 [[UIApplication sharedApplication]setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone];

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在PyQt6中,可以通过添加程序启动画面来提升用户体验。以下是一种实现方式: 1. 首先,你需要创建一个启动画面的窗口类。可以使用QMainWindow或者QWidget作为基类,根据你的需求选择适合的类。 2. 在启动画面窗口类中,可以添加一些控件和布局,以展示你想要显示的内容。例如,可以添加一个QLabel来显示应用程序的名称或者Logo图片。 3. 在主程序中,创建一个启动画面窗口的实例,并设置其为程序启动画面。可以使用QApplication类的setSplashScreen方法来设置启动画面。 4. 在主程序中进行其他初始化操作,例如加载资源、创建主窗口等。 5. 当主窗口准备好显示时,可以关闭启动画面窗口,并显示主窗口。可以使用QApplication类的closeSplashScreen方法来关闭启动画面。 下面是一个简单的示例代码: ```python from PyQt6.QtWidgets import QApplication, QMainWindow, QSplashScreen, QLabel from PyQt6.QtGui import QPixmap import sys class SplashScreen(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("启动画面") label = QLabel(self) pixmap = QPixmap("logo.png") # 设置Logo图片 label.setPixmap(pixmap) label.setAlignment(Qt.AlignmentFlag.AlignCenter) self.setCentralWidget(label) if __name__ == "__main__": app = QApplication(sys.argv) splash = QSplashScreen() splash.setPixmap(QPixmap("splash.png")) # 设置启动画面图片 splash.show() # 创建启动画面窗口实例 splash_window = SplashScreen() # 设置启动画面 app.setSplashScreen(splash) # 其他初始化操作... # 关闭启动画面,显示主窗口 app.closeSplashScreen() sys.exit(app.exec()) ``` 请注意,上述代码仅为示例,你需要根据自己的需求进行适当的修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值