TextField都使用了placeholder属性,但在代码中又设置了text属性,因此ViewController会同时显示placeholder文本和text文本。 
这个问题让我彻底崩溃。按道理说当text中的文本长度为0时placeholder文本显示,text文本长度不为0时placeholder应该隐藏才对? 
而且正常情况下我也没有遇到过这个问题。后来我新建项目,进行多次尝试都不能复现这个问题。 
虽然问题导致的原因至今没有找到。但google工作成果也不是一点没有。Stackoverflow上有人提到了一个问题,也许跟本文不无关联:

“iOS 6 SDK之前(例如5.1 SDK),不管是不是用代码改变了Text Field的text属性,都会导致UITextFieldTextDidChangeNotification 
通知产生。而到了iOS 6 SDK,如果是用代码改变了Text的值,UITextFieldTextDidChangeNotification通知不会产生。”

我从此受到了启发。既然如此,那么每当我修改Text属性之后(编码方式),手动Post一个UITextFieldTextDidChangeNotification 
通知会怎样呢?例如:

tfPhone.text = “1255” 
NSNotificationCenter.defaultCenter().postNotificationName(UITextFieldTextDidChangeNotification, object: self.tfPhone)

 

 

传送门

http://blog.csdn.net/kmyhy/article/details/49585695

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-15
  • 2022-12-23
  • 2022-12-23
  • 2021-06-04
猜你喜欢
  • 2021-09-01
  • 2022-12-23
  • 2021-09-04
  • 2022-12-23
  • 2021-08-04
  • 2022-02-06
  • 2021-05-16
相关资源
相似解决方案