J'écris une application universelle qui fonctionnera nativement sur iPad et iPhone. J'ai également besoin qu'il soit ciblé sur les périphériques plus anciens (ceux qui ne peuvent pas fonctionner sous 4.0), donc 3.1 est un must.Application universelle (iPad + iPhone) destinée aux appareils plus anciens (iOS <4) - adopte un protocole sous conditions?
J'ai déjà configuré le SDK de base avec la dernière version disponible (4.2) et la cible de déploiement vers la version 3.1. Je fais beaucoup de contrôles d'exécution afin d'appeler les méthodes correspondantes uniquement sur le bon périphérique/version. Une des choses que j'utilise dans l'iPad est un UISplitViewController. Lors de l'assignation du délégué splitViewController, le compilateur lance un avertissement parce que l'interface de classe n'adopte pas explicitement le protocole UISplitViewControllerDelegate et j'ai peur que si je le déclare, l'application plante sur les périphériques plus anciens où il n'y a pas UISplitViewController/UISplitViewControllerDelegate.
Quelle est la meilleure façon de supprimer l'avertissement du compilateur? Devrais-je déclarer un UISplitViewControllerDelegate 'vide'? Si oui, puis-je le faire conditionnellement à l'exécution? Ou devrais-je simplement faire en sorte que l'interface de classe correspondante soit conforme au protocole et ne pas m'inquiéter des appareils plus anciens?
Best,