Red de conocimiento informático - Conocimiento informático - Cómo configurar el tamaño de visualización de la imagen del marcador de posición de sdwebimage

Cómo configurar el tamaño de visualización de la imagen del marcador de posición de sdwebimage

Como se muestra en la figura, muchas páginas son en realidad el resultado de este método de visualización, que generalmente requiere imageView, textLabel, DetailTextlabel y UITableViewCell en sí proporciona un diseño automático conveniente (cuando hay imágenes y no hay imágenes, las posiciones de textLabel y DetailLabel se ajustarán automáticamente). izquierda y derecha). (Cuando hay imágenes o no hay imágenes, las posiciones de textLabel y DetailLabel se ajustarán automáticamente hacia la izquierda y hacia la derecha). Pero no hay forma de corregir el tamaño de la imagen (configurar directamente imageView.frame no puede corregir el tamaño de imageView), por lo que generalmente existen dos métodos para resolver este problema:

Fijar el tamaño de lo mostrado imagen (incluido PlaceHolder)

Personalice tableViewCell, agregue imageView, textView, textLabel, textLabel y DetailLabel personalizados, etc. Agregar imageView, textLabel y DetailTextLabel personalizados

Estos dos métodos pueden resolver este problema, pero estos dos métodos son en realidad muy problemáticos. ¿Podemos arreglar directamente el tamaño de imageView? Hay un método, simplemente sobrecargue layoutSubviews

Derivar UITableViewCell

// Personalizar una celda

@interface MMCell: UITableViewCell

@end

@ implementación MMCell

// Sobrecarga de layoutSubviews

- (void) layoutSubviews

{

UIImage * img = self.imageView.image;

self.imageView.image = [UIImage imageName:@"res/PlaceHolder.png"];

[super layoutSubviews];

self.image = img;

}

@end

De esta forma, solo necesitamos usar MMCell para arreglar el tamaño del imageView, este tamaño será consistente con el tamaño de PlaceHolder.png (generalmente estas páginas usarán PlaceHolder.png para mostrar la imagen predeterminada).

El principio es que cuando se llama a layoutSubviews de UItableVeiw, ajustará las posiciones de imageView, textLabel y DetailTextLabel de acuerdo con el tamaño de imageView.image. Antes de eso, configuraremos imageView.image en PlaceHolder. . png y luego vuelva a configurar la imagen original una vez que se complete el diseño.