在哪里为自定义单元格放置setScrollsToTop

时间:2013-03-25 11:45:58

标签: ios uitableview scroll uitextview

我有一个UITableView,它有两个自定义单元格。我为每个单元格都划分了UITableViewCell。在两者中,我有一个可以滚动的UITextView。我希望用户能够点击顶部栏滚动到顶部。我知道我需要为文本视图关闭scrollsToTop。但我不知道确切的位置。我已经尝试过这样的自定义单元格。

#import "MessageCell.h"

@implementation MessageCell

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:@"MessageCell"];
if (self) {
    // Initialization code

    [_messageText setScrollsToTop:NO];

}
return self;
}

@end

但那没用。有没有人有任何想法?我无法弄清楚其他地方。我尝试了实际的tableview vc,但它没有识别我的属性。在此先感谢您的帮助!!

继续下面的回复。我在cellForRowAtIndexPath中调用了一个名为FaceBookCell的单元格。此单元格包含UIImageView。我把它子类化为消息单元和光电池。它们都需要UIImageView,但是消息单元在UITextView中显示消息,Photocell在UITextView中显示消息,在另一个UIImageVIew中显示照片。我需要让Facebook单元知道停止scrolllsToTop为其他单元格。感谢。

1 个答案:

答案 0 :(得分:1)

您还需要为文本视图分配init 尝试从以下方法调用方法:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
....
[cell stopScrollToTop];

.....
return cell;
}

////在单元格中

#import "MessageCell.h"

@implementation MessageCell

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:@"MessageCell"];
if (self) {
    // Initialization code

    _messageText = [[UITextView alloc]init];

}
return self;
}

-(void)stopScrollToTop{
   [_messageText setScrollsToTop:NO];
}

@end