代码之家  ›  专栏  ›  技术社区  ›  Alex

使用键盘输入的自定义UIView?

  •  1
  • Alex  · 技术社区  · 16 年前

    我有一个自定义UILabel子类用于显示货币值。我只希望用户能够输入数字,并让视图将这些数字格式化为货币值——就像收银机一样。这使得UITextField对于这种输入来说是不合适的选择。

    我已经覆盖了hitTest:因此UILabel将返回自身——这显然是一个bug。另外,我已经覆盖了canBecomeFirstResponder和becomeFirstResponder,返回YES。不过,这两种方法都没有被调用。

    我只想让用户键入数字并使用退格键。我已经实现了UIT,但是键盘没有出现。那么,这能做到吗?如果是这样,我错过了什么?

    2 回复  |  直到 15 年前
        1
  •  1
  •   Noah Witherspoon    16 年前

    我做过类似的事情。子类UITextField,使其文本颜色清晰,并在其顶部粘贴标签以显示格式化版本。

    编辑-实际上,严格地说,你甚至不需要对它进行子类化。只需实现委托方法(-textField:shouldChangeCharactersRange:replacementString:),将标签添加到UITextField,并根据需要设置标签文本的格式。

        2
  •  1
  •   Alex    16 年前

    谢谢