【问题标题】:Right to left UILabels从右到左 UILabel
【发布时间】:2011-09-29 09:47:16
【问题描述】:

我需要使用 UILabel 显示文本(不能使用 UIWebView ),它有时同时包含希伯来语和英语。使用 UILabel 的默认设置,句子会混淆并且没有意义。我没有找到让 UILabel 显示文本 rtl 的方法。

有没有人知道这样做,或者实现这个的代码?

【问题讨论】:

    标签: ios uilabel right-to-left


    【解决方案1】:

    看看这个SO,它包含一些关于这个主题的信息,可能会对你有所帮助。 通过将代码 \u200F 添加到要显示的字符串中,这似乎对某些人有用。

    NSString *RTFstr = "1. בבוקר"; //This could be any right-to-left string
    NSString *directionalString = [@"\u200F" stringByAppendingString:[note text]];
    [someUITextView setString:directionalString];
    

    【讨论】:

    【解决方案2】:

    这会起作用

    -(void)fnForWritingDirection:(UILabel*)label textFor:(NSString *)stringForText{
    
        NSMutableAttributedString* attrStr = [[NSMutableAttributedString alloc] initWithString: [stringForText stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
    
        NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
    
        [paragraphStyle setBaseWritingDirection:NSWritingDirectionRightToLeft];
    
        [attrStr addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [attrStr length])];
    
        label.attributedText=attrStr;
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-18
      • 2022-01-13
      • 2017-07-22
      • 2016-05-02
      相关资源
      最近更新 更多