【问题标题】:how to prevent UITextView to automatically enter newline if sentence has space at beginning如果句子开头有空格,如何防止UITextView自动输入换行符
【发布时间】:2014-12-01 22:35:36
【问题描述】:

我有一个 UITextView,我想在第一行添加一个插图。为此,我在开头插入了几个空格。但是,当用户输入的文本过多而无法容纳在一行中时,整个文本将移动到第二行,而整个第一行都是空白的。

(截图)

我希望这样做的首选方法是仅将“f”移动到下一行,但可能是因为第一行缩进的空格,它会将后面的文本识别为一个单词,并移动整个事情到下一行。

我尝试在 UITextView 的子类中设置 self.textContainer.lineBreakMode = NSLineBreakByCharWrapping; 以及在 ViewController 中设置 self.passwordTextView.textContainer.lineBreakMode = NSLineBreakByCharWrapping;,但没有成功。

【问题讨论】:

  • 此行为符合设计。您可能必须制作自己的文本视图才能获得所需的内容。为什么你完全需要这种行为?

标签: ios objective-c cocoa-touch uitextview


【解决方案1】:

问题解决了。

显然,iOS sdk 仅在字符串中没有空格时才响应 NSLineBreakByCharWrapping。因此,我现在在textViewDidChange: 方法中使用它,而不是添加空格来解释“第一行缩进”:

-(void)textViewDidChange:(UITextView *)textView{
    self.passwordTextView.text = [self.passwordTextView.text stringByReplacingOccurrencesOfString:@" " withString:@"\u00A0"]; 
}

瞧!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-16
    • 2013-05-21
    • 1970-01-01
    相关资源
    最近更新 更多