Volver a cargar / cambiar la persona mostrada con ABPersonViewController en iOS7

Tengo una class que contiene un controller de vista secundaria ABPersonViewController . Hasta iOS7, pude pasar el post setDisplayedPerson: varias veces, actualizando o reemplazando la información mostrada. Sin embargo, con iOS7, una vez que el viewDidLoad dispara para el controller de vista secundario ABPersonViewController , cualquier llamada posterior a setDisplayedPerson: aparentemente se ignoran.

Podría replace el controller de vista secundario por otro, e incluso animar la transición entre ellos, pero esto es muy poco elegante.

Hay un radar abierto para esto: rdar: // 14682982

¿Alguien ha visto esto?

Editar: el problema se resolvió con iOS8 beta 1.

Como solución temporal, si ya se presenta ABPersonViewController , puede get ABContactViewController través de self.navigationController.topViewController.childViewControllers.firstObject y call reloadData: para volver a cargar la información de la persona mostrada.

El problema se resolvió en iOS8 beta.

He estado tratando con el mismo problema. Mi solución actual es tener el ABPersonViewController como una propiedad (lo necesito en varios lugares) con una instanciación retardada, y lo puse a cero antes de usarlo. De esta manera, siempre tengo uno nuevo para usar.