iOS 分别对一张图的局部进行磨砂,拼接起来不能贴合

效果图

需求,由于视图层级的原因,需要对图片分开进行磨砂, 然后组合在一起

如图,上下两部分,上下两个UIImageVIew大小相同,都是和图片同样的大小,只是上面的UIimageVIew 只展示上半部份 (上面图片的父视图cliptobound=YES,超出部分被切掉),下面的UIImageView只展示下半部分,如果没有磨砂的情况下,两张图是完全贴合的,下面分别对两

磨砂代码如下

复制代码
- (UIVisualEffectView *)bgEffectView{
    if(!_bgEffectView){
        UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
        _bgEffectView = [[UIVisualEffectView alloc] initWithEffect:blur];
        _bgEffectView.frame = CGRectMake(0, 0, SCREEN_WIDTH, SafeAreaTopHeight + 44 * PLUS_SCALE + 210 * PLUS_SCALE);
//        _bgEffectView.hidden = YES;
    }
    return _bgEffectView;
}

但是进行磨砂的时候发现一个问题,如图

就是上半部份和下半部份没有完全贴合,而是上半部分有明显的边界

经过多次尝试,还是不能完全贴合,后来发发现,磨砂都是对目前没有可以展示的内容进行磨砂的,比如上半部份,虽然图片是和下面的图片大小一样,但是其超处父视图的部分没有展示(clipsToBounds = YES),导致上半部分只对上面展示的那一部分进行磨砂,而磨砂会在边界留下分割线效果,就导致和下半部份不能贴合,

由此可见
图片不能分开磨砂,分开磨砂是不能贴合的

相关推荐
茶底世界之下2 分钟前
舞台灯下的萨克斯:用 Awaking 让铜管从蓝幕前亮起来
ios·app·产品
传奇开心果编程25 分钟前
【Flutter踩坑排雷】第28课:平台目录缺失与修复坑|`flutter create` 的“重建”与“覆盖”边界
android·flutter·ios·移动开发·跨平台·dart·声明式ui
30955666639 分钟前
股票接口返回 404 与空数组的排查笔记:证书状态与级别参数
java·笔记·python·ios·iphone·股票数据api·股票数据接口
Geek-Chow1 天前
00 Apple Code Signing, In Depth — A Series
ios
传奇开心果编程1 天前
【Flutter踩坑排雷】第25课:ScrollController 误用坑|跳转失效、监听泄漏与“控制器未附加”
android·flutter·ios·移动开发·跨平台·dart·声明式ui
90后的晨仔2 天前
macOS 27 下两个 Xcode 坑:真机 DDI 错配与模拟器 App Translocation
ios
开心猴爷2 天前
iOS 上架 App 流程
后端·ios
奶油话梅糖2 天前
用 iPhone 扫一间房,AI 帮你在浏览器里 1:1 重建它:Wes Bos 的 scan-to-threejs 工作流
人工智能·ios·iphone
茶底世界之下2 天前
阴天窗边的柿子:用 Awaking 让暖色成为主角
ios·app·产品
kango3 天前
iOS 远程推送全链路拆解:从 deviceToken 到多账号绑定
ios·app