如何检查UITextField中的视线外的字符?

Zhu*_*gqi 7 objective-c uitextfield ios

UITextField当用户输入文本时,我有一个收缩和扩展.如果文本字段的宽度达到屏幕宽度,我希望它是右对齐的,这样用户就可以看到最后输入的字符.在其他情况下,我希望它是左对齐的.

因为文本字段的最大宽度与屏幕不完全相同,所以我需要找到一种方法来检查它是否有可见区域以外的字符.

反正有没有实现这个目标?

Eag*_*e11 1

您可以尝试检查字段中字符串的宽度并将其与字段本身的宽度进行比较。它看起来像这样 -

CGSize textSize = [self.field.text sizeWithAttributes:@{NSFontAttributeName:self.field.font}];

// If the text is larger than the field
if (textSize.width > self.field.bounds.size.width) {
    // There is text that is not visible in the field. 
}
Run Code Online (Sandbox Code Playgroud)

这相当粗糙,但应该能让你接近。