Estoy tratando de implementar una subclase de administrador de ubicación sin conexión para permitirme pasar datos de encabezado al simulador de iphone, de forma similar al truco de eliminación de movimientos/acelerómetro. Desafortunadamente, según el CLHeading docs, todo es de solo lectura y no hay un inicializador que permita establecer el encabezado. ¿Hay alguna manera de forzar la creación de una instancia poblada de CLHeading?¿Es posible crear un objeto CLHeading en Objective C?
Respuesta
Desde Objective-C es un lenguaje de tipos dinámicos, puede crear su propia clase (por ejemplo, MyFakeHeading
) y el tiempo que responde a todos los mismos selectores que CLHeading
hace, puede simplemente echarlo como CLHeading
y pasarlo como un parámetro en su lugar. Y, como solo necesita falsificar su propio código, ni siquiera necesita implementar toda la funcionalidad de CLHeading
, solo las partes que está usando.
Si usted está muy bien con el uso de métodos privados (aplicación privada o empresa) puede agregar CLHeading+Init.h
a su proyecto:
@interface CLHeading (Init)
- (id)initWithHeading:(double)heading accuracy:(double)accuracy;
@end
lo estoy usando en mi simulador de ubicación https://github.com/maciekish/MockingPlace
¡Advertencia! ¡Esto hará que tu aplicación sea rechazada desde App Store!
Otro enfoque es la subclase CLHeading
y anula los getters y setters que le interesan.
- 1. ¿Es posible crear directivas personalizadas en Objective-C?
- 2. ¿Es posible crear una propiedad privada en Objective-C?
- 3. ¿Cómo crear un objeto raíz en Objective-C sin NSObject?
- 4. Cómo crear un objeto de NSNotification en Objective-C?
- 5. ¿Es posible recorrer un objeto Clase C#?
- 6. ¿Es posible serializar automáticamente un objeto C++?
- 7. ¿Es posible crear un servicio web statefull en C#?
- 8. ¿Cómo crear un NSAutoreleasePool sin Objective-C?
- 9. Crear archivos en Objective-C
- 10. ¿Es posible crear un objeto sin declarar una clase?
- 11. Retorno todas las propiedades de un objeto en Objective-C
- 12. ¿Es posible crear un diccionario de clave débil en C#?
- 13. ¿Es posible crear un nuevo operador en C#?
- 14. ¿Es posible crear un alias para una variable en C#?
- 15. ¿Cómo crear un patrón de estrategia en Objective-C?
- 16. ¿Es posible crear un lienzo transparente
- 17. ¿Es posible crear un vector de punteros?
- 18. Agregar Objeto C++ a Objective-Clase C
- 19. Crear clases dinámicas personalizadas en Objective-C
- 20. ¿Es posible comparar dos bloques Objective-C por contenido?
- 21. Cómo crear un png transparente en blanco en Objective-C?
- 22. ¿Qué hace Objective-C en realidad cuando declaras un objeto?
- 23. ¿Es posible crear un vector de bitsets?
- 24. Crear objeto de NSString del nombre de clase en Objective-C
- 25. ¿Cómo INCREMENTO un objeto NSDate en Objective-C
- 26. ¿Qué es Objective C++?
- 27. Cómo crear un flotante aleatorio en Objective-C?
- 28. ¿Es posible crear su configuración regional personalizada?
- 29. Crear una clase sin método init (Objective-c)
- 30. ¿Es posible eliminar un objeto no nuevo?
Brilliant! ¡Gracias! – Shabbyrobe