您的位置:首页 > 其它

关于适配tableviewcell内的view时出现的问题

2016-03-15 10:31 295 查看
昨天在cellForRowAtIndexPath里写如下代码时,出现一个问题:运行后发现cell上更改frame的view并没有改变,但是滑动下去,再划上来就变了

if ([scl.scholarIconDisplay isEqualToString:@"0"]) {

            cell.round_cover.hidden = NO;

            cell.imageView.frame = cell.round_cover.frame;

            cell.scholarName.frame = CGRectMake(0, 63, 100, 16);

            cell.scholarBirth.frame = CGRectMake(0, 83, 100, 16);

        }else{

            cell.round_cover.hidden = YES;

找了半天原因后来在cell类里加上如下的代码

- (void)awakeFromNib {

    self.scholarName.translatesAutoresizingMaskIntoConstraints = YES;

    self.scholarBirth.translatesAutoresizingMaskIntoConstraints = YES;

    self.imageView.translatesAutoresizingMaskIntoConstraints = YES;

}

查资料分析下原因,有可能是因为cell内部的view本身有用到了autolayout,所以在storyboard运行初始化cell时,将cell内的view的translatesAutoresizingMaskIntoConstraints修改为了NO,所以没能立刻修改,滑动之后重用了修改后的cell,所以又变回来了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: