El objeto es una UIView. Quiero obtener el valor x del objeto a través de [object valueForKeyPath:@"frame.origin.x"], sin embargo, obtuve los siguientes errores:

*** Finalizando la aplicación debido a una excepción no detectada 'NSUnknownKeyException', motivo: '[valueForUndefinedKey:]: esta clase no es compatible con la codificación del valor clave para el origen de la clave.'

¿Qué pasa? ¿Y como resolverlo? Gracias por adelantado.

-1
noveleven 31 dic. 2016 a las 11:08

1 respuesta

La mejor respuesta

Usa ese código

CGRect rect = [object valueForKeyPath:@"frame"];
CGFloat xCord = rect.origin.x;

O también puede obtener x a través de eso

CGFloat xCord = object.frame.origin.x;
0
abhishekkharwar 31 dic. 2016 a las 11:57
Gracias por su respuesta. ¿Es posible que el tipo primitivo obtenga su subestructura o tipo primitivo a través de valueForKeyPath? Como [rect valueForKeyPath:@"origin"], [point valueForKeyPath:@"x"], etc.
 – 
noveleven
31 dic. 2016 a las 12:12