0

私は1つのphonegap + sencha touchアプリケーションで作業しています。
xcode からアプリケーションのスプラッシュ スクリーンを設定しました。
また、さまざまなサイズのスプラッシュ スクリーンを使用し、適切な名前も付けました。
iphone4 の場合、スプラッシュ スクリーンに適切な画像が表示されますが、iphone5 ではフル スクリーンで適切な画像が表示されますが、しばらくすると再び iphone4 サイズのスプラッシュ スクリーンに調整され、上部と下部に空白が表示されます。
このスプラッシュ スクリーンを iphone5 用に調整するための解決策はありますか。

iPhone5で最初としばらくしてスプラッシュ画面を表示する方法を次に示します。
最初はこのように読み込まれました しばらくすると、このように設定され、上下に空白ができます

どんな助けでも大歓迎です。
前もって感謝します。

4

1 に答える 1

0

私もios7 4inchディスプレイでこの問題を抱えていました。私はコルドバ2.7を使用していました。CDVSplashScreen.m ファイルを編集することで解決しました。update - (void)updateBoundsという名前の関数があります

- (void)updateBounds{
UIImage* img = _imageView.image;
CGRect imgBounds = CGRectMake(0, 0, img.size.width, img.size.height);

CGSize screenSize = [self.viewController.view convertRect:[UIScreen mainScreen].bounds fromView:nil].size;

// There's a special case when the image is the size of the screen.
if (CGSizeEqualToSize(screenSize, imgBounds.size)) {
    CGRect statusFrame = [self.viewController.view convertRect:[UIApplication sharedApplication].statusBarFrame fromView:nil];
    imgBounds.origin.y -= statusFrame.size.height;
    //added this code for IOS7
    if (CDV_IsIPhone5() && SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
        imgBounds.origin.y=0.0f;
    }

} else {
    CGRect viewBounds = self.viewController.view.bounds;
    CGFloat imgAspect = imgBounds.size.width / imgBounds.size.height;
    CGFloat viewAspect = viewBounds.size.width / viewBounds.size.height;
    // This matches the behaviour of the native splash screen.
    CGFloat ratio;
    if (viewAspect > imgAspect) {
        ratio = viewBounds.size.width / imgBounds.size.width;
    } else {
        ratio = viewBounds.size.height / imgBounds.size.height;
    }
    imgBounds.size.height *= ratio;
    imgBounds.size.width *= ratio;
}


_imageView.frame = imgBounds;}

トップファイルにこのコードを追加しました

#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v)  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)

これが他の視聴者にも役立つことを願っています。乾杯 :)

于 2013-12-10T10:10:51.353 に答える