objective-c - Comment ajuster la taille de l'image affichée lors du chargement d'une image réseau depuis SDWebImage
滿天的星座
滿天的星座 2017-05-02 09:29:09
0
1
860

Comme le montre l'image : ceci est une capture d'écran d'un téléphone mobile 6s. Je l'ai mis dans un UIImageView avec une largeur = largeur de l'écran du téléphone portable et une hauteur de 210. Cette image est obtenue grâce au chargement du réseau. Ici, j'utilise SDWebImage. Maintenant, je veux que l'image soit meilleure, mon idée est de recadrer cette image. Le problème est que la requête réseau ici est asynchrone. Je ne sais pas où le gérer.

Mon principal problème est que je ne sais pas où recadrer l'image Web chargée en fonction de SDWebImage après son chargement.

Je souhaite que les images en ligne s'affichent comme suit : J'ai déjà le code pour la partie recadrage. Je ne sais tout simplement pas où le modifier.

滿天的星座
滿天的星座

répondre à tous(1)
淡淡烟草味

Utilisez l'option de téléchargement SDWebImageAvoidAutoSetImage, coupez en arrière-plan une fois le téléchargement terminé, puis définissez l'image dans le fil de discussion principal et appelez l'actualisation.
Vous pouvez écrire une catégorie pour UIImageView pour un appel facile.

UIImageView *imageView;

    __weak __typeof(&*imageView) weakImageView = imageView;
    [imageView sd_setImageWithURL:url
                 placeholderImage:placeholder
                          options:SDWebImageAvoidAutoSetImage // 下载完成后不要自动设置image
                        completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{
            image = [image croppedImage:...]; // 后台线程剪裁图片

            dispatch_async(dispatch_get_main_queue(), ^{
                __typeof(&*weakImageView) strongImageView = weakImageView;
                if (strongImageView) {
                    strongImageView.image = image;
                    [strongImageView setNeedsLayout];
                }
            });
        });
    }];
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal