Conecta
Nido Apple
Recibe ayuda de expertos
Registrate y pregunta
Es gratis y fácil
Recibe respuestas
Respuestas, votos y comentarios
Vota y selecciona respuestas
Recibe puntos, vota y da la solución
Pregunta
Creacion de aplicaciones para iPhone con XCode 4 [Preguntas]
- preguntó
- Desarrolladores Apple
- 785 Vistas
- 15 Respuestas
- abierta
Hola... hace unos meses que me he puesto a estudiar Objective-C y Xcode (v.4) y estoy tratando de crear mi propia aplicación pero tengo varias dudas.
Primero, mi aplicación debe tener mucha información y ésta la quiero ir mostrando al presionar un botón. Por ejemplo, información relacionada con una ciudad y al presionar el botón, que muestre la información de otra ciudad.
Por el momento se me ha ocurrido ingresar toda la información en un arreglo (NSMutableArray), pero quisiera saber si existe alguna forma más eficiente.
Muchas Gracias por todo
15 Respuestas
Es muy poca información para entender el funcionamiento completo de tu aplicación. Lo cierto es que puedes hacer lo mismo de diferente maneras y puede ser que te convenga hacer una parte de una y otra de otra, pero para ello si es necesario saber mas a detalle todo lo que quieres hacer, porque solo pasar de una pantalla a otra puede ser de muchas formas y todas son correctas.
Entonces porfa explica a fondo y a detalle las cosas para así aconsejarte mejor.
Saludos y bienvenido al sitio.
Por favor, accede o regístrate para añadir un comentario.
Muchas gracias Peter por responderme...
Te cuento: mi idea es que se muestre la descripcion de una ciudad distinta cada dia. Se me ocurrió que podía obtener la fecha y según el dia ( 1 a 28/30/31) mostrar una u otra ciudad. Para comenzar las pruebas, y como sería muy lento esperar a que pase cada día, lo que hice fue crear una funcion que calcule cada segundo. Según el segundo, cambia la descripción:
En el archivo ViewController.m escribí esto:
[PHP]-(IBAction)Cambia{
NSDateComponents *componente = [[NSCalendar currentCalendar] components:NSSecondCalendarUnit fromDate:[NSDate date]];
NSInteger segundo = [componente second];
NSString *segundoTxt = [NSString stringWithFormat @"%d", segundo];
if (segundo>9) {
numero = [segundoTxt substringFromIndex:1];
}else {
numero = segundoTxt;
}
// Agregar texto
int i;
i = [numero intValue];
NSMutableArray *arreglo = [[NSMutableArray alloc] initWithCapacity:10];
[arreglo addObject @"Sao Paulo..."];
[arreglo addObject @"Buenos Aires..."];
[arreglo addObject @"Santiago..."];
[arreglo addObject @"Madrid..."];
[arreglo addObject @"Londres... "];
[arreglo addObject @"Montevideo... "];
[arreglo addObject @"Los Angeles... "];
[arreglo addObject @"Nueva York... "];
[arreglo addObject @"Pucón..."];
[arreglo addObject @"Boise..."];
NSLog(@"%@", [arreglo objectAtIndex:i]);
label.text = [arreglo objectAtIndex:i];
}[/PHP]
En este ejemplo sólo puse 10 ciudades, pero quiero poner muchas, muchas más, y por eso quería saber si manejar los datos dentro de un arreglo es eficiente o se debe hacer de otra forma.
Tengo también otra duda... Me gustaría que al abrir la aplicación se muestre la ciudad que corresponde al dia y por eso supuse que debía copiar la función en el (void)viewDidLoad ... pero no creo que "copiar" toda la funcion nuevamente sea eficiente. Supongo que debe haber otra forma, algo así como crear funciones que se puedan llamar dentro de otras. ¿Existe algo así?
Gracias de nuevo por tu tiempo.
Por favor, accede o regístrate para añadir un comentario.
Hola,
Primera pregunta:
El tema del NSMutableArray es correcto, pero igual no seri la forma mas optima. Normalmente se utilizan archivos .plist, que dentro de estos se oganizan con diccionarios y arrays. Luego desde codigo accedes al archivo .plist y haces un array para trabajar con el. Lo llamarias asin y luego haces el array. Es util por que el .plist lo puedes tener en local o en un servidor y manejarlo como quieras.
[PHP]NSString *path = [[NSBundle mainBundle] pathForResource:@"lasdo" ofType:@"plist"];
//inicializamos nuestra propiedad arrayConDOEnGrupos con el
//contenido de ese fichero
arrayConDOEnGrupos = [[NSArray alloc] initWithContentsOfFile:path];[/PHP]
Por lo que hace a volver a copiar el código en viewdidload() no hace falta, puedes llamar la función Cambia() desde el mismo.
ejemplo:
[PHP]-(void)Cambia:{
// hacer lo que se quiera
}
[self Cambia] // para llamar desde cualquier lado o función!![/PHP]
Por favor, accede o regístrate para añadir un comentario.
Por favor, accede o regístrate para añadir un comentario.
Yo nuevamente....
He creado un archivo test.plist seleccionando New File... -> Property List.
En la ventana que se abrió, seleccioné Add Row. A la fila que se agregó le seleccioné el Tipo: Array. A dicho arreglo le agregué datos.
Agregué el código en el ViewController.m incluyendo un NSLog(@"mi array: %@", [miArray objectAtIndex:0]);
Pero al ejecutar la aplicación, en la consola me sale: mi array: (null)
No entiendo dónde he cometido el error.
Ayuda de nuevo por favor!!!!!!
Y Gracias
PDTA: He bajado un archivo .plist de un ejemplo que encontré en internet. Lo agregué a mi aplicación, le modifiqué sus datos y me funciona super bien, pero no logro hacer lo mismo creando mis propios archivos .plist desde el mismo Xcode (???)
Por favor, accede o regístrate para añadir un comentario.
Buenos días.
Para ver el contenido del plis tienes que poner este código
[PHP]NSString *path = [[NSBundle mainBundle] pathForResource:@"nombrearchivo" ofType:@"plist"];
//inicializamos nuestra propiedad array con el
//contenido de ese fichero
array = [[NSArray alloc] initWithContentsOfFile:path];[/PHP]
Por favor, accede o regístrate para añadir un comentario.
Por favor, accede o regístrate para añadir un comentario.
Gracias por la preocupación, Peter.
Me tomé una semanita libre, pero ya estoy de regreso.
Finalmente estoy usando la opción de agregar un archivo .plist (ya creado en otro ejemplo) y modificarlo en el Xcode.
Si creo el archivo directamente en Xcode, sus datos no son reconocidos..¿?
Pero la primera opción funciona bien.
Por favor, accede o regístrate para añadir un comentario.
Si lo agregas de otro ejemplo o lo creas tu es lo mismo, son reconocidos ambos, entonces si no te funciona al tu crearlo, algo haces mal en el proceso de creación.
Saludos.
Por favor, accede o regístrate para añadir un comentario.
Si... seguramente estoy haciendo algo mal... el problema es que no sé qué puede ser. He seguido paso a paso los ejemplos para crear el archivo plist desde Xcode y no me funciona.
Por favor, accede o regístrate para añadir un comentario.
- 1
- 2
- Siguiente »
Por favor, accede o regístrate para responder a esta pregunta.
En el blog
-
- 261981
- 1
- Ago 31, 2017
Otras Preguntas y Respuestas
- entre Desarrolladores (Desarrolladores)
Respuestas WordPress (Usuarios WordPress)
Sin Respuesta
-
- 488
- 0
- Jun 16
-
- 631
- 0
- May 8
-
- 650
- 0
- Feb 23
-
- 654
- 0
- Dic 7, 2023
-
- 286
- 0
- Nov 30, 2023
-
- 676
- 0
- Jul 7, 2023
-
- 824
- 0
- Ago 4, 2022
-
- 978
- 0
- Feb 25, 2022
- ver todas
Actividad Reciente
DJUNQUERA seleccionó una respuesta Ago 12
Comando de voz para desplazarse un número variable…DJUNQUERA respondió Ago 12
Comando de voz para desplazarse un número variable…Peter comentó Jul 11
Emulador de AndroidDaleGarrote comentó Jul 11
Emulador de AndroidPeter respondió Jul 11
Emulador de Android
Ultimas Respuestas
DJUNQUERA respondió
La versión de MacOS Sonoma habilita un comando de
0Peter respondió
Creo que lo mas sencillo es que te pagas en contac
1Peter respondió
Me parece que es un problema de RAM y va a depende
1mozzer respondió
0Peter respondió
Si es por el sistema, ya que requieres macOS Ventu
1DaleGarrote respondió
Bueno, estoy probando y no doy en la tecla. Decid�
0ppenagosr respondió
Muchas gracias por tu respuesta; cometí el error
0Ultimos Comentarios
DaleGarrote comentó
...