objective-c - 为 UITextField 添加前缀

标签 objective-c ios nsstring uitextfield

我想要在无法删除的文本字段中输入“$”符号。用户应该能够在它之后输入值,如果他按退格键,它应该只会删除他输入的值。

之前我不能使用 UILabel 的原因是因为 UITextfield 中的文本是居中对齐的,并且随着用户输入值,它会向两边增长。

请提供任何解决方案。

最佳答案

  1. 最初将文本字段的文本设置为“$”。
  2. 将文本字段的委托(delegate)设置为您的某个对象(可能是包含它的 View Controller )。
  3. 实现 -textField:shouldChangeCharactersInRange:replacementString: 并返回 NO 如果提议的更改将删除“$”。

此外,您可能需要实现 -textFieldDidBeginEditing: 以将光标定位在“$”之后(如果它还不存在的话)。

关于objective-c - 为 UITextField 添加前缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9756454/

相关文章:

iOS UIImagePickerControllerSourceTypeCamera 全屏照片无法捕获

ios - Google ChromeCast 从 iOS 播放 m3u8

iOS静态库,无法访问某些类方法

Objective-C 如何为 float 打印出前导 0?

iphone - NSString - 如何从 "ÁlgeBra"到 "Algebra"

objective-c - 在 NSDictionary 的键中使用 å ö ä

ios - 处理 iOS 8 键盘扩展中的返回键

ios - prapareForSegue 无法为目标 Controller 设置任何属性

ios - Size 类下的 AVCaptureVideoPreviewLayer 自动旋转

ios - 如何在不使用脚本剥离模拟器切片的情况下创建动态框架