Xcode y las advertencias obsoletas no siempre funcionan

Tengo un comportamiento extraño con Xcode (4.3.2) y advertencias obsoletas, me gustaría entender por qué. Parece que las advertencias obsoletas se activan solo en ciertos métodos. Por ejemplo (ambos métodos están en desuso):

[[UITableViewCell alloc] initWithFrame:CGRectMake(0, 0, 0, 0) reuseIdentifier:@"Cell"];

El compilador advierte (correctamente) que el método está en desuso. Pero:

[self presentModalViewController:viewController animated:YES];

no activa la advertencia. ¿Por qué? :-)

preguntado el 12 de junio de 12 a las 11:06

1 Respuestas

Consulte los documentos del desarrollador, obtendrá como:

1- Está en desuso actualmente-

// Frame is ignored. The size will be specified by the table view width and row height.

- (id)initWithFrame:(CGRect)frame reuseIdentifier:(NSString *)reuseIdentifier __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA,__MAC_NA,__IPHONE_2_0,__IPHONE_3_0);

2- Quedará obsoleto pronto.

// Display another view controller as a modal child. Uses a vertical sheet transition if animated.This method has been replaced by presentViewController:animated:completion: // It will be DEPRECATED, plan accordingly.

- (void)presentModalViewController:(UIViewController *)modalViewController animated:(BOOL)animated; 

Espero que se aclare por qué está recibiendo una advertencia en primer lugar, no en segundo.

Respondido el 12 de junio de 12 a las 11:06

ok, gracias, estaba revisando solo en los documentos en línea (que solo dice "obsoleto"), pero no en el .h :-) - LombaX

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.