• iPadForos en Facebook
  • iPadForos en Google+
  • iPadForos en Twitter
  • iPadForos en Flickr
Qué está pasando en el foro
Tutorial iPhone SDK: CoreLocation
Autor Mensaje
  Nota30 May 2011, 23:51
iMiembro 3G
iMiembro 3G
Avatar de Usuario
Desconectado

Mensajes: 53
Agradecido: 5 veces en 4 posts
Jailbreak: No
Registrado: 24 Ago 2010, 00:32
Gracias: 0
Género: Masculino
Mis móviles: jorgearnold game center
Mi iPod: iPod Touch 4g 8GB
Otros: Macbook y Windows Vista
Game Center: jorgearnold
SABER TU UBICACIÓN EN TU iPhone
Esto te va a servir para saber a donde estas, nos pidieron usuarios de nuestra web.
El objetivo de este tutorial es para generar la aplicación super simple, ¿Dónde estoy? Esta aplicación hace una cosa, que le diga a su ubicación actual y la actualización de sí mismo cuando se mueve. Hay mucho más que puedes hacer con esta API, este ejemplo solo muestra lo básico. Usted puede ver la interfaz con la información de ubicación a continuación.
Comenzamos con la interface de Builder primero colocamos 2 Label para los nombres de Latitud y Longitud. Ponemos 2 Label  para señalar la cantidad de nuestra Locación.
Primero en el H.
Primero pondremos el framework CoreLocation.
Importamos CoreLocation. Y el delegado de esta misma.
Colocamos CLLocation Manager (para nuestra locación).
Y colocamos los 2 Label de longitud y latitud.
#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>
@interface WhereAmIViewController : UIViewController
<CLLocationManagerDelegate>{
CLLocationManager *locationManager;
IBOutlet UILabel *latLabel;
IBOutlet UILabel *longLabel;
}
@end
Eso es todo el edificio interfaz que tenemos que hacer. En este punto es necesario agregar el marco Core Location, usted puede hacer esto haciendo clic derecho sobre el “Marcos” y de ir a Agregar> marcos existentes … Se abrirá una ventana de exploración, CoreLocation.framework debe ser una opción en el lado derecho. Este es el marco utilizado para obtener una bodega de datos de localización.
La localización marco básico sólo tiene unas pocas clases en ella, siendo la más importante CLLocationManager . El CLLocationManager clase controla el envío de actualizaciones a un delegado en cualquier momento la ubicación ha cambiado. Puesto que utiliza el patrón delegado tenemos que decir que nuestro controlador implementa el CLLocationManagerDelegate protocolo – esto se hace en la cabecera. Lo único que tenemos que añadir a la cabecera es una variable de instancia para el gerente de locación. Nuestro archivo completo de cabecera está por debajo.
Pondremos en ViewDidLoad las propiedades vamos a marcar LocationManager para que nos de la igualdad de nuestra Locación.
La Distancia y el cambio de lugar de la locación.
- (void)viewDidLoad {
[super viewDidLoad];
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters;
[locationManager startUpdatingLocation];
}
Las propiedades de segundo y tercer definir con qué frecuencia se actualizará el gestor de la ubicación. distanceFilter define en qué medida la ubicación tiene que moverse antes de que se enviará una actualización, kCLDistanceFilterNone significa que siempre le enviará una actualización no importa cuán lejos se mueve ubicación. La última propiedad, desiredAccuracy , decide la precisión de la localización en el teléfono debe estar en orden para ser incluido como una actualización, la he ajustado a kCLLocationAccuracyHundredMeters (100 m).
Si nos fijamos en el protocolo de delegado que se va a ver que hay varios métodos que pueden aplicarse, pero en realidad el único que tenemos que aplicar es la siguiente:
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
{
El método delegado arriba se llama cuando hay una nueva ubicación disponible. Usted se dará cuenta de que conseguir ambos y nuevos lugares antiguos entrando como CLLocation objetos. Un CLLocation objeto tiene las coordenadas, la precisión, la altitud, y una marca de tiempo. Sólo estamos interesados en las coordenadas – que tiene la latitud y longitud. El código completo de nuestro método es delegado a continuación, voy a entrar en más detalles epílogos.
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
{
int degrees = newLocation.coordinate.latitude;
double decimal = fabs(newLocation.coordinate.latitude – degrees);
int minutes = decimal * 60;
double seconds = decimal * 3600 – minutes * 60;
NSString *lat = [NSString stringWithFormat:@"%d° %d' %1.4f\"",
degrees, minutes, seconds];
latLabel.text = lat;
degrees = newLocation.coordinate.longitude;
decimal = fabs(newLocation.coordinate.longitude – degrees);
minutes = decimal * 60;
seconds = decimal * 3600 – minutes * 60;
NSString *longt = [NSString stringWithFormat:@"%d° %d' %1.4f\"",
degrees, minutes, seconds];
longLabel.text = longt;
}
Básicamente, tomamos la ubicación y el giro de los grados en grados, minutos y segundos y luego mostrar el valor de la etiqueta correcta. Estamos usando fabs en vez de abs para obtener el valor absoluto, ya que necesitamos el valor decimal. La matemática es muy simple. Cada grado es de 60 minutos o segundos 3600. Comenzamos cortando los títulos a continuación, calcular el número total de minutos y terminar el cálculo de segundos. Uso sencillo NSString stringWithFormat creamos una bonita salida de cadena de ubicación bonita. La última cosa que hacemos es establecer el texto de la etiqueta correcta.
Hemos concluido con este Tutorial espero que les guste.
Nos vemos
Web:http://tecnologiaiphoneapp.wordpress.com/
Mis App: http://itunes.apple.com/es/artist/jorgearnold/id404204455


No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.

_________________
Mis App: http://itunes.apple.com/es/artist/jorgearnold/id404204455
Twitter:
@appjorge/  @jorge3i
Facebook: AppJorge
Web: http://www.appjorge.com/


Advertir al moderador sobre este mensaje
Volver Arriba
  Perfil  
Gracias  



Buscar en el tema:
Saltar a:  
Responder al temaCrear nuevo tema  [ 1 mensaje ] 


Temas relacionados
 Temas   Autor   Respuestas   Vistas   Último mensaje 
No hay nuevos mensajes sin leer en este tema. [Tutorial] Downgrade iOS 4.0 a 3.1.x - iPhone 3G/3GS

[ Ir a páginaIr a página: 1, 2 ]

XMASTER

13

3971

25 Sep 2010, 23:44

Akuario Ver último mensaje

No hay nuevos mensajes sin leer en este tema. [Tutorial] Acelera iOS 4 en tu iPhone 3G

akarakan

3

2871

13 Ago 2010, 15:05

dj_veiga Ver último mensaje

No hay nuevos mensajes sin leer en este tema. Adjunto(s) Tutorial iPhone SDK : UIPageController

jorge333

0

789

17 Dic 2010, 01:26

jorge333 Ver último mensaje

No hay nuevos mensajes sin leer en este tema. Adjunto(s) Tutorial iPhone SDK : UIPickerView

jorge333

2

1292

10 Ene 2012, 16:03

jorge333 Ver último mensaje

No hay nuevos mensajes sin leer en este tema. Adjunto(s) Tutorial iPhone SDK: UISwitch

jorge333

0

497

10 Sep 2011, 15:33

jorge333 Ver último mensaje

 


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 8 invitados


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro
No puede enviar adjuntos en este Foro

Mostrar mensajes previos:  Ordenar por  

Nuestras redes sociales



Índice general » iPad » Programación en iOS » Tutoriales programación iOS



Powered by phpBB | Traducción de Huan Manwë | Diseñado por CookinApps