2015-05-31 58 views
2

我目前正在像這樣將非英文(希伯來文)富文本文件加載到UITextView中。在UITextView中顯示富文本文件導致Choppy/Slow滾動

self.textView.attributedText = 
    [NSAttributedString.alloc 
    initWithFileURL:[ NSBundle.mainBundle URLForResource:@"TextFile" withExtension:@"rtf" ] 
    options:nil 
    documentAttributes:nil 
    error:NULL 
    ]; 

一切正確加載和文件滾動,只是它變得非常波濤洶涌。我認爲這是UITextView的渲染問題。

是否有任何其他庫或方式使滾動平滑。 注意:UITextView不可編輯且不可選。

回答

1

這可能不太理想,但我在類似的情況下有過這種想法。嘗試增加UITextView的高度(創建一種緩衝區)。您可能需要調整各種UIViewscrollIndicatorInsets,contentInsets,layer.zPosition,並且可能會使UITextView透明,並且可能會使UITextView透明,其後面的UITextView具有正確的大小/邊框/等,具體取決於您的佈局。

選項2

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(40, 100, 200, 100)]; 
scrollView.scrollEnabled = YES; 
scrollView.contentInset = UIEdgeInsetsZero; 
[self.view addSubview:scrollView]; 

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, scrollView.bounds.size.width, HEIGHT)]; 
label.text = @"text"; 
label.numberOfLines = 0; 
[scrollView addSubview:label]; 
scrollView.contentSize = CGSizeMake(label.bounds.size.width, label.bounds.size.height); 
+0

聰明的解決辦法,但似乎過於複雜。但可能是我唯一的選擇 – huddie96

+0

也許嘗試在UIScrollView UILabel作爲替代。 iOS框架很好地教會了我的解決方法。祝你好運。 –

+0

我是否必須使滾動視圖高度和標籤高度等於文本長度?如果我使用UILabel + ScrollView方法? – huddie96