效果图 Gif.gif如图所示:点击相册之后会发现最顶部的图片位置跑到了上边儿 , 这肯定是iOS11适配的问题,关键
ZLPhotoLib
这么大的库你不容易找到...现在我就把我修改该位置源码得方法给大家!
ZLPhotoPickerAssetsViewController.m
在
- (ZLPhotoPickerCollectionView *)collectionView
这个方法里 , 也就是collectionView的getter方法里!
原来的写法是:NSString *heightVfl = @"V:|-0-[collectionView]-0-|";
修改为下面的写法即可!
/**
* 2017年10月9日 , 修改此处问题 , iOS11下点击相册会有CollectionView顶部显示cell不全的问题:
源码中用的是VFL约束的! , 此处按照iOS11格式修改 , 非iOS11不修改的宏定义模式!
请注意该位置是 "相机胶卷"页面的约束格式!!!
*/
NSString *heightVfl;
if (@available(iOS 11.0 , *))
{
heightVfl = @"V:|-60-[collectionView]-0-|";
}
else
{
heightVfl = @"V:|-0-[collectionView]-0-|";
}
同理:
ZLPhotoPickerGroupViewController.m
在选择相册页面的
- (UITableView *)tableView
方法里也就是tableView的getter方法里
原来的写法是:NSString *heightVfl = @"V:|-0-[tableView]-0-|";
修改为下面的写法即可!
/**
* 2017年10月9日 , 修改此处问题 , iOS11下点击相册会有CollectionView顶部显示cell不全的问题:
源码中用的是VFL约束的! , 此处按照iOS11格式修改 , 非iOS11不修改的宏定义模式!
请注意该位置是 "选择相册"页面的约束格式!!!
*/
NSString *heightVfl;
if (@available(iOS 11.0 , *))
{
heightVfl = @"V:|-64-[tableView]-0-|";
}
else
{
heightVfl = @"V:|-0-[tableView]-0-|";
}
// 2018年12月12日修改之前遇到的问题...应该这么改就对了~
总结一句话就是
if (@available(iOS 11, *))
{
UIScrollView.appearance.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentAutomatic;
}
else
{
self.automaticallyAdjustsScrollViewInsets = NO;
}
最后的效果是这样的:
最终效果图 Gif.gif
网友评论