ideawu/cocoaui

ITable 中使用了 UIScrollView,UIScrollView自动调整高度时会,会出现控件下移的问题

Opened this issue · 1 comments

问题:
UITabBarController , UINavigationController, ITable,三者混用时,特别在二级UINavigationController POP时后,ITable中的Row会出现下移问题。

解决办法:
1、在ITable.m 中viewDidLoad中增加 self.automaticallyAdjustsScrollViewInsets = NO; //禁止自动调整。
2、在init 在ITable.m 中init中增加:

    scrollFrame = CGRectMake(0, NAV_HEIGHT, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height-64-50);

在ITable.m 中layoutViews中自定义修改高度:

CGSize fsize = CGSizeMake(scrollFrame.size.width,
                                  scrollFrame.size.height );
        if(!CGSizeEqualToSize(_scrollView.frame.size, fsize)){
            log_debug(@"change size, w: %.1f=>%.1f, h: %.1f=>%.1f", _scrollView.frame.size.width, scrollFrame.size.width, _scrollView.frame.size.height, scrollFrame.size.height);
            CGRect frame = _scrollView.frame;
            frame.size = fsize;
            NSLog(@"%s,%d,%f",__func__,__LINE__,self.view.frame.size.height);
            
            _scrollView.frame = frame;
            _contentFrame.size.width = self.view.frame.size.width;
        }

你好,如果能提供重现代码,并发一个 pull request,那将是最好的。