IPhoneで画像を起動するのに助けが必要です。 xcodeのプロジェクト設定には、起動イメージを追加するオプションがあります。追加して2秒間表示します...もっと増やしたい...どうすれば変更できますか?ありがとう:)
次のコードを適用してそれを行うこともできます
-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
[NSThread sleepForTimeInterval:2.0]; // Used For Showing Splash Screen for More Time
}
まず、ビューコントローラを作成して、スプラッシュ画面/起動画像として表示する画像を設定します。
そのビューをメソッドapplicationDidFinishLaunchingに表示します:with Animated:No
提示している別のビューに次のコードを記述します
-(void) viewWillAppear:(BOOL)animated
{
[self performSelector:@selector(dismiss1) withObject:nil afterDelay:5.0f];
[super viewWillAppear:animated];
}
-(void) dismiss1
{
[self dismissModalViewControllerAnimated:NO];
}
アプリを開くたびにスプラッシュ画面を表示する場合は、applicationDidBecomeActiveメソッドでスプラッシュ画面ビューコントローラーを表示します
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
/*this will pause main thread for x interval seconds.
put on the top of application:didFinishLaunchingWithOptions, so it will not
proceed to show window until sleep interval is finished.*/
[NSThread sleepForTimeInterval:2]; //add 2 seconds longer.
//other code....
}
sleep()
メソッドを使用できます。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
sleep(10);
return YES;
}
起動画像は、アプリの応答性を高めるためにあり、tabBarsなどのアイテムの前にUIのスナップショットである必要があります。Appleは、実際にはそれらを次のように使用することを望んでいません。スプラッシュスクリーン。
とはいえ、多くの人がそうしており、この結果を達成するには、アプリデリゲートは画像を起動するときに同じ画像を画面に表示する必要があります。そうすると、performSelector:withObject:afterDelay:
を使用してメインアプリの起動を遅らせることができます。
Swiftで
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
Thread.sleep(forTimeInterval: 2.0)
return true
}
これを実現するには、ウィンドウをrootviewControllerに割り当てる前に、ウィンドウに「Default.png」のbackgroundColorを追加し、数秒後にrootviewControllerをウィンドウに割り当ててウィンドウの背景色をデフォルトに設定します。
このような -
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
[self performSelector:@selector(openLoginScreen) withObject:nil afterDelay:0.5];
self.window.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Default.png"]];
[self.window makeKeyAndVisible];
}
-(void)openLoginScreen{
self.window = [UINavigation .... "YOUR ROOT VIEWCONTROLLER"];
}
デフォルトのビューを作成します...同じデフォルトの画像で画像ビューを作成します...そして、[self performselector methods
を使用して特定の時間後に新しいビュー(メインアプリ)を起動します
最初にロードしたビューにUIImageViewを配置できます。たとえば、FirstViewControllerのviewDidLoadで
-(void)viewDidLoad{
appLogo = [UIImageView alloc]initWithImage:[UIImage imageNamed:@"companyLogo.png"]];
[appLogo setFrame:CGRectMake..... ];
self.view addSubView:appLogo];
[self performSelector:@selector(hideAppLogo) withObject:nil afterDelay:1000000 :) ];
}
-(void)hideAppLogo{
[appLogo setHidden:YES];
//let the user use your app now!
}