Open huang1988519 opened 8 years ago
@huang1988519 在viewWillLayoutSubviews中获取到的self.view.frame才是准确的
@huang1988519 有时间的时候会尝试支持autolayout, 多谢提示
@jasnig 恩,这个我知道,但是这个方法可能会被多次执行。我现在是的放在viewDidload中来解决初始化时的Frame错误。
- (void) viewDidload {
...
GCD_Asyn_OnMain {
[self initZJSegment];
[self initZJContent];
}
...
}
但是在往scrollview上布局子视图时,排版错误。所以我在 ZJContentView.m中 继承 layoutSubviews 来对子视图的frame记性二次计算。
-(void)layoutSubviews {
[super layoutSubviews];
if (self.currentView) {
for (UIView * subView in self.currentView.subviews) {
subView.frame = self.currentView.bounds;
}
}
}
正常使用时没有发现问题,但是偶尔还是会出现计算Page 时得到越界的next Index。 这个应该也不是大问题了。等有时间再改吧。
提个建议: 你现在的重用机制是 两个contianer view 循环使用。在左右来回切换时,对性能增加不必要的负担。 如果把当前视图的左右视图也常驻到内存当中,这样左右切换时不会进行额外操作,只有当停止滑动再进行下一个视图的显示。
@huang1988519
能支持一下 autolayout么,嵌套用autolayout布局的界面,取到的self.view.frame 是错误的。