Dans mon application Xamarin IOS j'ouvre le ContactUI avec le code suivant:IOS ContactUI Retournez à l'application après modification
var contact = new AddressBookService().GetCNContactById(addressbookId);
var view = CNContactViewController.FromNewContact(contact);
view.Editing = true;
// Display the view
var window = UIApplication.SharedApplication.KeyWindow;
var vc = window.RootViewController;
while (vc.PresentedViewController != null)
{
vc = vc.PresentedViewController;
}
var navController = vc as UINavigationController;
if (navController != null)
{
vc = navController.ViewControllers.Last();
}
vc.PresentViewController(new UINavigationController(view), true, null);
Je l'envelopper dans un INavigationController
car sans elle ne se charge pas. Le message suivant est imprimé sur la sortie:
[CNUI ERROR] Contact view delayed appearance timed out
La boîte de dialogue Modifier s'affiche correctement. Mais après que je clique sur Enregistrer, je viens la vue détaillée:
Comme vous pouvez le voirest le deuxième problème, qu'il n'y a pas de bouton de retour. La seule façon de revenir à mon application est de tuer l'application et de recommencer. Existe-t-il un moyen de revenir directement à mon application après avoir enregistré le contact? Ou pour envelopper le ContactUI dans mon ViewController actuel afin que le TabBar
soit toujours visible ci-dessous?