·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> app软件开发 >> IOS开发 >> ios开发3.5和4.0寸屏幕自适应中的一点问题

ios开发3.5和4.0寸屏幕自适应中的一点问题

作者:佚名      IOS开发编辑:admin      更新时间:2022-07-23

在开发iso应用中需要考虑到ip4的3.5寸屏幕和ip5的4寸屏幕的高度不一样的问题。常见的问题有滚动条位置,底部被挡住等情况;我遇见是tableview中添加下拉上提刷新功能时刷新指示器显示位置的问题。

我自己根据网上已有代码写了一个下拉上提刷新插件:http://git.oschina.net/supdo/SDRefresh;

插件要根据tableview的高度来设置刷新指示器显示位置,为了正常工作,我在应用中对tableview的高度进行手工设置,代码如下:

- (void)viewDidLayoutSubviews
{
    [super viewWillLayoutSubviews];
      
    CGSize screenSize =  [UIScreen mainScreen].bounds.size;
    self.myBlogTable.frame = CGRectMake(0, 0, screenSize.width, screenSize.height);
    self.myBlogTable.contentInset = UIEdgeInsetsMake(64+50, 0, 49, 0);
    self.myBlogTable.scrollIndicatorInsets = UIEdgeInsetsMake(64+50, 0, 49, 0);
      
    if (!isLayoutSubview) {
        isLayoutSubview = YES;
          
        self.blogParser.header = [SDRefreshHeader addHeader:self.myBlogTable headerDelegate:self];
        self.blogParser.footer = [SDRefreshFooter addFooter:self.myBlogTable footerDelegate:self];
          
        loadMsg = [[SDMessage alloc] initWithSuper:self.view width:200];
        loadMsg.mode = SDMessageModeTextLoading;
        loadMsg.position = SDMessagePositionMiddle;
        [loadMsg showMessage:@"加载中..."];
          
        [self.hdWeb DefaultPage];
    }
}

  

这样根据屏幕高度来设置tableview高度后插件正常工作,此时有个地方需要注意,就是tableview不能放在第三层的view中,我遇到的问题就是将tableview放到第三层的view中,此处设置的高度自适应代码无效。

不过本质而言应该是storyboard的某个地方需要设置,我还没找到。

文章链接:http://quke.org/post/ios-35and40-height.html (转载时请注明本文出处及文章链接)