varios - Obtener la imagen de una persona de la libreta de direcciones del iPhone
porque no aparecen mis contactos en mi iphone (3)
¿Cómo se obtiene la imagen de una persona de una libreta de direcciones de iPhone?
Código ligeramente renovado:
UIImage *image = nil;
@try
{
CFDataRef cfImage = ABPersonCopyImageData(person);
// or CFDataRef cfImage = ABPersonCopyImageDataWithFormat(person, kABPersonImageFormatThumbnail);
if (cfImage)
{
image = [UIImage imageWithData:(__bridge NSData*)cfImage];
CFRelease(cfImage);
}
}
@catch (NSException *exception)
{
//...
}
Puedes hacerlo así ...
NSData *imgData = (NSData *)ABPersonCopyImageData(person);
UIImage *img = [UIImage imageWithData:imgData];
donde la person
es de tipo ABRecordRef
. Ahora, como CFData y NSData están puenteados sin cargo, simplemente puede escribir cast CFData
a NSData
y obtener la imagen
Espero que esto ayude.
(NSData*)ABPersonCopyImageDataWithFormat([targetPeople objectAtIndex:index], kABPersonImageFormatThumbnail)
Esto es más rápido ya que devuelve una miniatura.