2012-02-24 6 views
1

나는 PlayN에서 사용자의 텍스트 입력을 수신하기위한 최상의 솔루션이 무엇인지 궁금합니다. 이 작업을 수행하는 데 사용할 수있는 것을 찾지 못했습니다. 텍스트를 작성하기 위해 HTML 입력과 같은 것을 렌더링하는 것이 최선의 해결책이라고 생각합니다. 그러나 우리가 사용할 수 있어야하므로 간단하지는 않습니다. 안드로이드 (예 : 안드로이드 플랫폼)의 가상 키보드 예제와 HTML 백엔드의 일반 키보드. 그럼에도 불구하고 나는 게임에서 키보드를 안드로이드로 불러 일으키는 것은 매우 어렵거나 불가능할 것이라고 생각한다. ...텍스트 입력과 같은 사용자 입력을위한 최상의 솔루션

나는 트리플 플레이 UI 라이브러리에서 위젯을 만드는 것에 대해 생각하고있다. 화면에서 가상 키보드를 사용자 입력 용으로 렌더링하는 경우 ...

더 좋은 해결책이 있습니까, 아니면 위와 같이 쓴 것처럼 구현해야합니까 (트리플 플레이 위젯과 같은)?

답변

2

이미 Field이라는 텍스트 입력을 수신하는 트리플 플레이 위젯이 있습니다.

그러나 매우 원시적이며 아직 모바일 플랫폼에서 작동하지 않습니다 (하드웨어 키보드가있는 Android 기기에서 작동). 가상 키보드를 표시하기 위해 PlayNode에 API를 제공해야하지만 그때까지는 가상 키보드의 표시를 트리거 할 수있는 방법이 없습니다.

그러나 실질적인 텍스트 입력에는 사용하지 않는 것이 좋습니다. 잘라 내기 및 붙여 넣기, 언어 입력 방법 또는 사용자가 텍스트 입력을 위해 기대하는 매우 복잡한 기능을 지원하지 않습니다.

내가 좋아하는 PlayN에 API를 추가하고 싶습니다 : 한 줄의 텍스트를 입력하도록 부착 (기본) 텍스트 상자, 가상 키보드를 팝업, 허용 할

Keyboard.requestTextInput(String label, Callback<String> callback) 

플랫폼의 기본 텍스트 입력 지원의 모든 기계를 사용합니다. 이렇게하면 잘라 내기 및 붙여 넣기가 가능하며 언어 입력 방법을 사용하고 문제가되는 플랫폼에서 편안함을 경험할 수 있습니다.

더 복잡한 텍스트 입력 (채팅 인터페이스 또는 노트 페이지 수있는 기능)이 필요한 게임의 경우 기본 멀티 라인 텍스트를 사용하여 지원하려는 각 플랫폼에 대해 별도의 인터페이스를 만들어야 할 것입니다 위젯을 편집 한 다음 PlayN 게임에 위젯을 "연결"합니다. 이것은 간단한 SO 답변에서 설명 할 수있는 것보다 더 복잡 할 것입니다. 그래서 약간의 연구를하고 PlayN이 지원하려는 백엔드 각각의 디스플레이를 어떻게 관리해야하는지 배우셔야합니다.

+0

Replay ... 주셔서 감사합니다. 나는 필드를 사용해 보았지만 JAVA에서도 작동하지 않습니다 .. 클릭하면 표시되지 않는 무언가를 입력하려고 시도합니다 ... 나는 당신에게 어떤 계획이 있는지 궁금합니다. PlayN에 API가있는 가상 키 보디 용 "Keyboard.requestTextInput (문자열 레이블, 콜백 콜백)"그렇다면 ... 유용 할 때 ... 이런 종류의 유용성이 필요할 것입니다. 많은 게임 사용자의 텍스트 입력을 사용합니다 .. 문자 이름과 같은 ... – btk

+0

미안하지만 하드웨어 키보드로 잘 작동합니다 (키보드 (setListener (klistener);)를 추가하는 것을 잊어 버리십시오 ..). PlayN에 API가있는 가상 키보 드) – btk

관련 문제