9

我正在使用 phonegap.build,我需要在我的游戏应用程序上执行以下操作:

游戏一直强制为横向模式,没有画布版本,这是只有ios和android的游戏,我用phonegap。

使用 facebook-connect 插件:

https://github.com/Wizcorp/phonegap-facebook-plugin

我有一个对话框,我用 facebook-connect api 打开它:

facebookConnectPlugin.showDialog(对象选项,函数成功,函数失败)

在我有的选项中:

{
    method: "apprequests",
    message: "Come on man, check out my application."
}

结果是:

在此处输入图像描述

我的那个窗口有问题,它以纵向模式打开,并且我有一个仅限横向的应用程序(这意味着用户在提示到此屏幕时应该更改方向,这是一种不好的行为)

我搜索了几个小时来解决这个问题,但没有运气。

现在,如果我让它保持这样,并且我按下“搜索更多朋友”输入,键盘会以横向模式打开,这会导致这种尴尬的行为:

在此处输入图像描述

我的问题是:

1)有什么办法可以将facebook的弹出窗口修复为横向?

2)如果不是 1,是否可以使用 config.xml 中的任何配置(这是 phonegap 构建)或任何执行此操作的插件来控制键盘的打开方式(横向或纵向)

3)如果拒绝,我有什么选择邀请朋友到我的应用程序(邀请不是一个选项,这不是画布应用程序)

谢谢

4

2 回答 2

1

@totothegreat,在#1 我不知道。在 #2 上,这在 Andrdoid 上是可能的。我不知道iOS。在#3,我对facebook的东西不太了解。

对于 Android,您需要将方向设置为横向,并且您需要告诉 Android 您将处理方向并且您将处理重绘(您永远不需要这样做)。这意味着您也可以控制键盘。在这个线程中,Ben Jones 创建了一个稍微不同的解决方案。

下面是您需要添加到AndroidManifest.xml<activity>元素的两个 XML 属性(android:configChanges 和 android:screenOrientation),但是您可以在config.xml中将这两个属性交换为它们的等价物

     <activity android:name="basicScreenSize" android:label="@string/app_name"
                    android:theme="@android:style/Theme.Black.NoTitleBar"
                    android:configChanges="orientation|keyboardHidden|keyboard|locale"
                    android:screenOrientation="landscape">

您正在查找的文档隐藏在文档<activity>部分中。同样,您想要的属性是android:configChangesandroid:screenOrientation

最后,如果你想用config.xml来实现它,那么我建议你阅读 Ben Jones 的 implementation 的线程。祝你好运,如果您仍有问题,请给我回短信。

于 2015-06-13T03:24:48.737 回答
0

@totothegreat,关于这个问题 - 我提供帮助的部分原因是因为我需要自己解决这个问题。这就是我所拥有的。要在 iOS 上进行此更改,您需要编写一个 Info.plist(或等效文件)——它是一个 XML 文件。这个 Info.plist 相当于 AndroidManifest.xml 和 config.xml

谷歌苹果 ios Info.plist 键盘横向

到目前为止,我有:

  1. 关于信息属性列表文件
  2. UI界面方向
  3. UISupportedInterfaceOrientations

因此,您可以将这些属性集成到 Phonegap 的 config.xml 中。一个电话间隙,从

配置文件元素

将这些属性添加到 config.xml 的说明如下:

配置文件元素

请注意Config File Element中的文档说添加到 config.xml 的格式与插件相似,并且config-file Element示例来自插件。

让我知道事情的后续。我需要自己尝试一下。杰西

于 2015-06-15T08:51:03.303 回答