美文网首页
autoresizing的问题

autoresizing的问题

作者: 米亚流年 | 来源:发表于2018-06-19 14:43 被阅读0次

开发时 如果发现xib中的frame变来变去的,首先考虑autoresizing 所以呢 先打印frame 然后再打印2s 或者3s之后的frame 如果两次打印的值不一致的话 再来打印autoresizingMask

默认从xib中创建出来的控件 autoresizingMask 默认就是18(UIViewAutoResizingFlexbleHeight | UIViewAutoResizingFlexbleWidth)
autoresizingMask用于控制当前这个控件的宽度、高度、左右边距、上下边距,跟随父控件自动伸缩

如果我们将xib中自带的view删除,然后再拖拽一个view到xib中 autoresizingMask = 36

如果不希望xib中的控件跟随父控件自动伸缩的话 则修改其
view.autoresizingMask = UIVIewAutoresizingMaksNone
一般情况下,
以下这些view的autoresizingMask默认就是    18(UIViewAutoResizingFlexbleHeight | UIViewAutoResizingFlexbleWidth)
1.从xib中创建出来的默认控件
2.控制器的view
UITableViewCell的contentView发生变化
contentView是用来填充整个cell的。contentView有多大cell就有多大,执行
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
这段代码时,contentView{320,398} voiceView{244,119}
当执行到return cell时  
contentView{375,170} voiceView{299,0}
如果希望xib里控件多大就显示多大的是 则可以 -(void) awakeFromNib{ 
self.autoresizingMaks = 
UIViewAutoresizingNone
}

相关文章

网友评论

      本文标题:autoresizing的问题

      本文链接:https://www.haomeiwen.com/subject/momaeftx.html