iPhone Phonegap方向问题

时间:2011-07-22 17:17:08

标签: iphone cordova

我使用phonegap库(Phonegap 0.9.6)向iPhone做了一个简单的应用程序。我喜欢使用方向功能,但如果我旋转设备,屏幕不会改变。 我尝试了一些东西,但都没有用。 我将这些行添加到_Info.plist

   <array>
      <string>UIInterfaceOrientationPortrait</string>
      <string>UIInterfaceOrientationLandscapeLeft</string>
      <string>UIInterfaceOrientationPortraitUpsideDown</string>
      <string>UIInterfaceOrientationLandscapeRight</string>
   </array>

接下来尝试将这些相同的行添加到PhoneGap.plist。 我尝试使用javascript,但不起作用。有谁知道解决方案?

3 个答案:

答案 0 :(得分:2)

您需要将这些内容添加到YOUR_APP_NAME-Info.plist:

适用于iPad:

    <key>UISupportedInterfaceOrientations~ipad</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationLandscapeLeft</string>
        <string>UIInterfaceOrientationPortraitUpsideDown</string>
        <string>UIInterfaceOrientationLandscapeRight</string>
    </array>

适用于iPhone:

<key>UISupportedInterfaceOrientations</key>
<array>
    <string>UIInterfaceOrientationPortrait</string>
</array>

答案 1 :(得分:1)

我遇到了同样的问题,唯一对我有用的是将此代码添加到我的js(在deviceready之外):

window.shouldRotateToOrientation = function(degrees) {
                return true;
            }

然后添加到xml:

<preference name="Orientation" value="default" />

答案 2 :(得分:0)

我有同样的问题,你需要手动添加到plist文件,据我所知,由于cordova问题,它不会从config.xml复制。

因此,要在所有Apple设备上获得完全方向支持,请确保.plist文件与以下内容匹配:

 <key>UISupportedInterfaceOrientations</key>
    <array>
      <string>UIInterfaceOrientationPortrait</string>
      <string>UIInterfaceOrientationLandscapeLeft</string>
      <string>UIInterfaceOrientationPortraitUpsideDown</string>
      <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
    <key>UISupportedInterfaceOrientations~ipad</key>
    <array>
      <string>UIInterfaceOrientationPortrait</string>
      <string>UIInterfaceOrientationLandscapeLeft</string>
      <string>UIInterfaceOrientationPortraitUpsideDown</string>
      <string>UIInterfaceOrientationLandscapeRight</string>
    </array>