iOS-Xib获取view尺寸的问题


用xib创建的视图,我们一般要在控制器中获取对应的view尺寸,但经常我们没法获取到,或者获取的不准

如果通过xib加载出来的view尺寸是不正确的, 在xib中这个view不管你怎么设置都是治标不治本,我们会在layoutSubviews通过自己的宽度来计算子控件的尺寸!

//在这里拿出的宽度是不正确的
- (void)awakeFromNib {
//对尺寸计算我们一般拿到这个方法中计算(拿到自己宽度计算子控件的尺寸)
- (void)layoutSubviews {
[super layoutSubviews];
//在这里拿到自己的宽度是正确的
 }

那我们也会想到, 如果控制器的view也是xib创建的, 我们该怎么办 ? 其实不管控制器是在哪里创建的, 我们只要只在viewDidLayoutSubviews方法中拿到控制器尺寸来计算子控件尺寸都是正确的, 所以说建议大家以后在viewDidLayoutSubviews计算尺寸:
- (void)viewDidLayoutSubviews
 [super viewDidLayoutSubviews];
//在这里计算尺寸 
}
也可以在layoutsubview里面进行计算


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM