1

无论如何创建一个输入文本来打开设备目标的本机键盘?(来自 iOS 和 Android 设备的底部屏幕)。

我试过

tripleplay.ui.Field field = new Field();

但它只显示一个带有本机文本字段的弹出窗口。

谢谢

4

2 回答 2

2

我害怕没有办法使用Field类来做到这一点。有关更多详细信息,请参阅此 答案

于 2013-02-25T22:15:01.903 回答
1

TriplePlay 中有一个名为的实验性新 API NativeTextField,可用于覆盖具有正确位置和尺寸的平台原生文本字段,使其看起来是 TriplePlay UI 的一部分。当用户点击它以使其获得焦点时,会显示操作系统键盘,并且文本输入会像在本机应用程序中一样正常工作。

目前只有 iOS 的实现,但最终会添加 Android 实现。

在您的喜欢中包含tripleplay-ios.jar ios/pom.xml

<dependency>
  <groupId>com.threerings</groupId>
  <artifactId>tripleplay-ios</artifactId>
  <version>${playn.version}</version>
</dependency>

然后向您的Main.cs文件添加调用:

        IOSTPPlatform.register(platform);

返回的platform在哪里。IOSPlatformIOSPlatform.register

将所有这些连接起来,然后Field将自动使用 iOS 上的本机文本字段实现。

需要注意的另一件事:本机文本字段仅在编辑文本时显示本机文本字段。文本编辑完成后,本机字段被删除,标准 TriplePlay 字段用于显示文本的当前值。

如果由于渲染略有不同而导致文本发生奇怪的移动,您可以将本机文本字段始终保留在该Field.FULLTIME_NATIVE_FIELD样式中。

于 2013-03-06T23:11:45.187 回答