Estoy tratando de cargar un UIImage a partir de su URL con completiony placeholder de la imagen , pero ni la UIImage ni el marcador de posición UIImage se cargan.

Aquí está mi código:

  NSURL *url = [NSURL URLWithString:@"http://assets.gearlive.com/tvenvy/blogimages/stewiegriffin.jpg"];
  NSURLRequest *request = [NSURLRequest requestWithURL:url];

  [self.imageView setImageWithURLRequest:request placeholderImage:[UIImage imageNamed:@"bg.png"]

      success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
          imageView.image = image;
      } 
      failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {}
   ];
El código parece correcta. Sólo tienes que configurar el marcador de posición directamente self.imageView.image = [UIImage imageNamed:@"bg.png"]; para asegurarse de que su imagen está visible la vista y la configuración de la imagen de las obras..
Si la configuración de la imagen directamente no funciona, la imagen de conjunto vista el color de fondo de self.imageView.backgroundColor = [UIColor redColor]; y ejecutar la aplicación para asegurarse de que la vista de la imagen es la realidad visible en la pantalla..
he publicado responder a probarlo y que me informara.
Gracias @lukya tu comentario es realmente útil

OriginalEl autor Ahd Radwan | 2015-05-07

4 Comentarios

  1. 11

    Uso AFnetworking donde puede configurar la imagen de marcador de posición también si la url no es correcta. Esto es más eficiente cuando está cargando imágenes en un formato tableview o una vista de colección.

    De importación UIImageView+AFNetworking.h

    #import "UIImageView+AFNetworking.h"

    y con el siguiente código:

    NSString *url1[email protected]"http://www.fnordware.com/superpng/pnggrad16rgb.png";
    [self.image setImageWithURL:[NSURL URLWithString:url1] placeholderImage:[UIImage imageNamed:@"placeholder.png"]]; 

    Se puede descargar desde gitHub

    Yo había usado SDImage, nunca sabía AF podría hacer eso…Gracias
    puedo capaces de utilizar la url de la imagen como imagen de marcador de posición ?
    Para los futuros desarrolladores, la importación no es necesario.

    OriginalEl autor Akshay Karanth

  2. 15

    Probar este código para obtener la imagen…

    Código:

    NSURL *url = [NSURL URLWithString:@"http://www.fnordware.com/superpng/pnggrad16rgb.png"];
    
    NSData *data = [NSData dataWithContentsOfURL:url];
    UIImage *image = [UIImage imageWithData:data];
    
    [self.imageview1 setImage:image];    

    Nota: he usado la prueba de url. usted puede utilizar su dirección url.

    Actualización :
    Swift 3.0 Código :

    let url = URL(string: "http://www.fnordware.com/superpng/pnggrad16rgb.png")
        do {
            let  data = try Data(contentsOf: url!)
            var image = UIImage(data: data)
            self.imageView.image = image
            print(image)
        } catch {
    
        }

    Nota : En Xcode versión 7.1 y anterior deberá establecer ATS (Aplicación de Seguridad de Transporte). Para establecer ATS necesita escribir a continuación el código en info.plist archivo.
    Asegúrese de que la url de la imagen no debe ser nulo.

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
    Prueba esta en los Patios, convierten a swift 3, y funciona a la perfección! Gracias!
    Son bienvenidos….!!!
    Gracias por tus comentarios que he actualizado la respuesta y también añadido código para swift.

    OriginalEl autor Ashok Londhe

  3. 3

    Retirar AsyncImageView. Su mejor async cargador de imágenes AFAIK. todo lo que tienes que hacer es configurar la dirección URL de la imagen para el imageview y el resto es atendido. incluyendo el almacenamiento en caché.

    esta es muy fácil de usar

    OriginalEl autor ShahiM

  4. 1

    He encontrado el problema

    Mi código está funcionando correctamente.

    El problema estaba en algún lugar en mi código , el ImageView fue nil.
    Gracias a todos los

    OriginalEl autor Ahd Radwan

Dejar respuesta

Please enter your comment!
Please enter your name here