Après la mise à niveau vers Xcode 7.0, je reçois un avertissement dans la méthode UIViewControllerRotation: - (NSUInteger)supportedInterfaceOrientations
:
Type de retour en conflit dans l'implémentation de 'supportedInterfaceOrientations': 'UIInterfaceOrientationMask' (aka 'enum UIInterfaceOrientationMask') vs 'NSUInteger' (aka 'unsigned int')
Pourquoi est-ce et comment le résoudre?
EDIT: Si vous allez à la définition, vous verrez que le type de retour a effectivement changé: - (UIInterfaceOrientationMask)supportedInterfaceOrientations NS_AVAILABLE_IOS(6_0);
mais changer le type de retour dans le code ne fait pas taire l'avertissement.
Essayez ce Tweak:
#if __IPHONE_OS_VERSION_MAX_ALLOWED < 90000
- (NSUInteger)supportedInterfaceOrientations
#else
- (UIInterfaceOrientationMask)supportedInterfaceOrientations
#endif
{
return UIInterfaceOrientationMaskPortrait;
}
J'utilise celui-ci:
#if __IPHONE_OS_VERSION_MAX_ALLOWED < __IPHONE_9_0
#define supportedInterfaceOrientationsReturnType NSUInteger
#else
#define supportedInterfaceOrientationsReturnType UIInterfaceOrientationMask
#endif
- (supportedInterfaceOrientationsReturnType)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
... un peu plus long que le correctif de Nishant mais un peu plus clair, je pense.