0

我有一个内置 as3/air 的移动应用程序,用于移动设备,我想知道处理文本输入字段的最佳方法是什么。

我的意思是我在多个屏幕上有多个输入字段。输入有一个标签(文本字段)、标签下的背景颜色(四边形)和一个输入(文本输入)。有些是密码,有些不是。有些是不同的宽度/高度,多行/单行等。但是,所有这些都使用嵌入的字体,分配了名称和 ID 等。

我创建了一个扩展 Sprite 的类文件并构建了文本输入的所有组件(文本字段、四边形、文本输入),因此我的其他类/屏幕可以创建一个传递自定义值的此类的新实例。

var textField:TextFieldClass = new TextFieldClass();
textField.DrawTextField(name, ID, width, height, isPassword, hasLabel, labelPosition etc);

上面的效果很好。我可以重用该类以使用最少的代码在屏幕上绘制多个文本输入,但是当有多个实例时,我无法获取文本值/ID/名称。

我尝试将每个 textField 实例添加到一个数组中并进行迭代,但这会获得最后一个 textField 实例的 x 个数,例如,如果第一个实例名为 txtEmail,第二个是 txtPassword,我会得到 2 个 txtPasswords。

我也尝试过 getChildByName 并指定 textinput 的名称,但是当我使用 txtEmail 时,我得到一个无法访问空值但 txtPassword 有效。

也许我正在解决这个错误,如果存在一种更好的方法(我确信存在),我很乐意使用它。基本上我想要一个可重用的文本输入类,它允许自定义设计(四边形、字体等),而不必为每个新输入字段复制粘贴整个文本输入代码。

谢谢

4

0 回答 0