【问题标题】:Splash screen jumps on iPad on iOS 7 + PhonegapiOS 7 + Phonegap 上的 iPad 上的闪屏跳转
【发布时间】:2013-10-02 10:59:35
【问题描述】:

我正在使用 Sencha touch 2 和 Phonegap for iOS 开发一个应用程序。启动画面在 iOS 5 和 6 上的 iPhone 和 iPad 以及 iOS 7 上的 iPhone 上都可以正常工作,但在 iOS 7 上的 iPad 上它会水平移动(从左到右大约 5-10 像素)。

在实验过程中,我发现它使用 2 个文件作为启动画面:首先它使用 iOS 7 的文件,然后使用 iOS 6 和 5 的文件。由于这些文件的大小不同,启动画面会在文件已更改。

有什么办法可以解决吗?我已设置所有文件并具有正确的大小:

【问题讨论】:

    标签: ipad cordova ios7 splash-screen


    【解决方案1】:

    问题已通过为 iOS 5 或更早版本的 iPad 添加“纵向”和“横向”启动画面得到解决:

    【讨论】:

    • 没有为我解决。想提一下您的文件的尺寸是多少?通过 q-a 我假设 +/- 状态栏也意味着 +/- 20px 的高度。如果没有资产目录,为 ios 6 及以下版本提供的尺寸已经是 -20px 或 -40px 的高度。
    • 没关系。我不得不从模拟器/ipad 中删除该应用程序,否则它仍会使用旧图像。我还进入了 build/project.app 目录(右键单击“显示包内容”)并删除了Launch-* 图像,不确定我是否必须这样做,但 iirc 那些也是旧的。最后,上面的面板是通过右侧的第三个选项卡/图标,“属性检查器”。您只需单击启动图像的占位符即可找出预期的尺寸。无论出于何种原因,应用程序首先使用 iOS7 LaunchImage 启动,然后是全屏 iOS6-LaunchImage(无括号)。
    • 另外你还需要Resources/splash中的默认图片,否则phonegap会编译失败。
    【解决方案2】:

    您的 Phonegap 版本不知道如何找到 iOS 7 启动图像,并偶然发现了 iOS 5/6 文件。我通过更改 CDVSplashScreen.m 中的以下行(从第 129 行开始)从

    解决了 Cordova 2.9 中的问题
        imageName = @"Default";
    }
    
    if (CDV_IsIPhone5()) {
        imageName = [imageName stringByAppendingString:@"-568h"];
    

        imageName = @"Default";
    }
    
    if(IsAtLeastiOSVersion(@"7.0")) {
        imageName = [imageName stringByAppendingString:@"-700"];
    }
    
    if (CDV_IsIPhone5()) {
        imageName = [imageName stringByAppendingString:@"-568h"];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-18
      • 2012-10-08
      相关资源
      最近更新 更多