奇葩2: storyboard中使用AutoLayout,设置Label居中,但不起作用

来源:互联网 发布:网络实时监控 app 编辑:程序博客网 时间:2024/06/05 15:30

具体描述:

UICollectionViewCell中的所有控件,设置了居中,但是实际效果都是偏左一点。

之前都是没有问题的。 不知道改动了什么。其他页面没有问题。UICollectionView中新添加一个cell,也是偏左。

左图,storyboard中的设计, 右图,模拟器中实际跑出来的结果。

    


原因:


不明

解决办法:

storyboard中设置了UICollectionView的CellSize为260,336。


代码中动态改变了cellSize的值

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {        if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {        if (UIInterfaceOrientationIsLandscape(self.interfaceOrientation)) {            //平板横屏大小            return CGSizeMake(310,372);        }else{            //平板竖屏大小            return CGSizeMake(350,420);        }    }    else    {        //手机大小        return CGSizeMake(260,336);    }}

经过多次尝试发现,代码中和storyboard中,CellSize的宽度设置不一致,效果就不一样。

最终是设置260的时候,正好是居中的。 大于260,偏左,小于260偏右。原因不明。




0 0
原创粉丝点击