我正在使用Libgdx编写游戏。当用户输入播放器名称时,我使用what was suggested here来处理虚拟键盘。这实际上就像一个魅力。但是,如果用户在名称字段中输入超过8个字符,则会破坏我的游戏的UI设计。所以我想阻止用户输入超过8个字符。
TextField有一个setMaxLength方法as defined here。如果我将此值设置为8,则无论用户输入什么,前8个字符都会放在我的文本字段中。但这有点令人讨厌和误导,因为用户仍然可以进入,比方说20个字符,而不知道将只使用前8个字符。
所以,我的问题是,即使我使用处理TextField输入的“本机”方式,是否有一种机制可以阻止用户输入超过8个字符。
提前致谢。
答案 0 :(得分:1)
我在给你打字之前测试了这个,所以我知道它有效。下面的代码将使您的textfield只允许您在TextField小部件中输入8个字符。但要小心,有些字符(长度)比其他字符大(字母很短)。
textField.setMaxLength(8); // Maximum chars will be 8
textField.setAlignment(1); // If you wanted to center the text
// (1 = Center, 2 = Right Align)
另外请注意,如果要将TextField添加到表中,则可以更改窗口小部件的可见宽度。
table.add(textField).width(50); // I believe this is in pixels
你并没有给我太多的帮助(没有代码),所以我希望这个答案可以帮助你。
祝你好运!