iOS gèle une partie d'une image séparément et l'épissage ne peut pas s'adapter

rendusVeuillez ajouter une description en image

Exigence, en raison de la hiérarchie des vues, l'image doit être givrée séparément, puis combinée comme indiqué sur la
figure, les parties supérieure et inférieure, les UIImageVIew supérieur et inférieur ont la même taille, les deux sont de la même taille que l'image, mais le UIimageVIew ci-dessus ne montre que la moitié supérieure (la vue parent cliptobound=YES de l'image ci-dessus, la partie excédentaire est coupée), le UIImageView ci-dessous ne montre que la partie inférieure, s'il n'y a pas de glaçage, les deux images sont entièrement montés, les codes des deux glaçages sont les
Veuillez ajouter une description en image
suivants

- (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;
}

Cependant, lors du ponçage, j'ai trouvé un problème : comme le montre la photo,
la partie supérieure et la partie inférieure ne sont pas entièrement ajustées, mais la partie supérieure a une limite claire.
Veuillez ajouter une description en image

Veuillez ajouter une description en image

Après de nombreuses tentatives, l'ajustement n'était toujours pas parfait. Plus tard, j'ai découvert que le glaçage consistait à givrer le contenu qui ne peut pas être affiché actuellement, comme la partie supérieure. Bien que l'image soit de la même taille que l'image ci-dessous, son super parent La partie de la vue n'est pas affichée (clipsToBounds = YES), ce qui fait que la partie supérieure gèle uniquement la partie montrée ci-dessus, et le glaçage laissera un effet de ligne de démarcation sur la bordure, ce qui entraînera son échec pour s'adapter à la partie inférieure, afin qu'elle soit
visible.
L'image ne peut pas être dépolie séparément, et le dépoli séparément ne peut pas être collé.

Je suppose que tu aimes

Origine blog.csdn.net/LIUXIAOXIAOBO/article/details/132442395
conseillé
Classement