我在控制在我使用的UITextView
內的滾動問題,所以我選擇創建自己的子類。UITextView子類化時實現UIScrollView方法
我有一個關於爲某些UIScrollView
超類方法提供實現的非常基本的問題。
這裏是我的骨架代碼爲UITextView
子類:
@interface PastedTextView : UITextView
@end
@implementation PastedTextView
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
}
return self;
}
- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated
{
NSLog(@"scrollRectToVisible");
}
- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated
{
NSLog(@"setContentOffset");
}
- (void)zoomToRect:(CGRect)rect animated:(BOOL)animated
{
NSLog(@"zoomToRect");
}
@end
當將這些UIScrollView
方法叫什麼名字?只有從我自己的客戶端代碼?或者他們會被框架調用?
更新:
的原因,我問這個是因爲我有以下問題:我編程方式添加文本到UITextView
(從剪貼板)。當我這樣做時,如果textview已滾動,以至於內容的頂部不再處於視圖中,則在添加新文本後,文本視圖會滾動回頂端。
我沒有明確地觸發這個滾動,所以它發生在框架內。
我還沒有發現任何描述此行爲的Apple文檔。所以,我一直在試圖找到滾動的來源,以便我可以避免它...
當這個滾動發生時,上述方法都不會被調用。順便提一下,UITextView
s scrollRangeToVisible
方法(我已經嘗試將該方法添加到子類實現)。我不明白爲什麼隱式滾動回到頂部正在發生,我想要防止它...
所以我遇到的問題:我正在編程向UITextView(從粘貼板)添加文本。當我這樣做時,如果textview已滾動以使內容的頂部不再顯示,則文本視圖在追加新文本後滾動回頂部。發生這種情況時,上述方法都不會被調用。順便提一下,UITextView的'scrollRangeToVisible'方法(如果我將它添加到子類實現中)都不是。我無法弄清楚爲什麼隱含的滾動回到頂端正在發生...... –