UITextView 不要在这里插入换行符

UITextView do not insert line break here

我有 UITextView。它包含一些数学公式。 例如,"In triangle ABC side AB = 5"。 有时 UITextView 在“=”后换行。变成这样

在三角形ABC边AB=

5

但我希望"AB = 5"永远在一起:

在三角形ABC边

AB=5

我该怎么做?我不想删除像 "AB=5" 这样的空格。谢谢。

如果我没看错你的问题,你正在寻找 \n 换行符:

NSLog(@"In triangle ABC side\nAB = 5")

好的,因为我更好地理解了您的意图,也许这可以成为您的解决方案或解决方案的开始:

- (NSString *) makeStringNonWrappable : (NSString *) string
{
    NSMutableString *myString = [NSMutableString stringWithString:string];
    NSRange rangeValue = [myString rangeOfString:@" = " options:NSCaseInsensitiveSearch];
    if (rangeValue.length > 0){
        NSLog(@"string contains  =  %d %d", rangeValue.location, rangeValue.length);
        NSString *nonbreakingspace = @"\u00A0";
        NSString * replacementString = [NSString stringWithFormat:@"%@=%@", nonbreakingspace, nonbreakingspace];
        [myString replaceCharactersInRange:rangeValue withString:replacementString];

        NSLog(@"%@", myString);
        return myString;
    }
    else {
        NSLog(@"string does not contain = !");
        return string;
    }
}

基本上,我在您的字符串中找到了 = 的出现并将其替换为看起来完全相同但被 UITextView 处理不同的字符串。空格不再作为空格处理。注意,我没有编译代码,可能会有一些错别字..