lunes, 23 de diciembre de 2013

Tipos de variables en IOS

Tipos escalares

  • int Valor entero comprendido entre +/- 2.147.483.647.
  • float Valor en coma flotante comprendido entre +/- 16.777.216.
  • double Valor en coma flotante comprendido entre +/- 2.147.483.647
  • long Valor entrero con un tamaño que varia entre 32 bits y 64 bits, dependiendo de la arquitectura
  • long long Valor entero de 64 bits.
  • char Un unico caracter. Tecnicamente se representa como un int
  • BOOL Valor booleano, que puede tener los valores SI o NO.
  • NSInteger Cuando se compila en una arquitectura de 32 bits es lo mismo que un int, y cuando se hace en 64 bits puede tener un valor comprendido entre 0 y 2^64.
  • NSUInteger Cuando se compila en una arquitectura de 32 bits es lo mismo que un unsigned int y cuando se hace en 64 bits puede tener un valor comprendido entre 0 y 2^64.
La forma de declarar e inicializar una variable es:
Tipo Nombre = valor;

ej: int numeroEntero = 2;

Podemos ver un ejemplo en:
Tipos de variables

Otros tipos de datos son:


  • NSString Cadena de caracteres
Ej: NSString *cadena = @"cadena de caracteres";
    Se declara con el * delante ya que es un objeto, y estamos apuntando a su posicion de memoria.
    Se inicializa con el @ delante ya que es una forma abreviada de hacerlo.
EJ: cadena = [NSString stringWithFormat: @"Entero: %i", entero];
Es una forma de asignar valor al string concatenando variables

  • NSArray
  • NSMutableArray Coleccion ordenada de objetos accesibles mediante un indice
en un NSArray NO podemos añadir nuevos elementos.

Ej: NSArray *array = [[NSArray alloc] initWithObjects:@"Texto 1", @"texto2", nil];
    Hay que poner un nil (nulo) al final para avisar de que el array termina ahi,
    El alloc se usa para reservar el espacio en memoria

Si solo quisieramos declararlo sin datos:
NSArray *array = [[NSArray alloc] init];

Ej: NSMutableArray *mutableArray = [[NSMutableArray alloc] init];
[mutableArray addObject:@"texto 1"];

Es la forma de añadir nuevos objetos al MutableArray, al array NO se puede

  • NSDictionary
  • NSMutableDictionary Nos permite crear estructuras de datos sin necesidad de crear subclases
Con el Dictionary pasa lo mismo que con el array, si no es mutable no se puede modificar a posteriory

Ej: NSDictionary *diccionario = [[NSDictionary alloc] initWithObjectsAndKeys:cadena, @"int",nil];
NSLog(@"%@" ,[diccionario objectForKey:@"int"]);
NSMutableDictionary *mutableDictionary = [[NSMutableDictionary alloc] init];

[mutableDictionary setObject:cadena forKey:@"String"];
[mutableDictionary setObject:cadena forKey:@"String2"];
[mutableDictionary setObject:cadena forKey:@"String3"];

NSLog(@"%@",mutableDictionary); 
    Imprime el dictionary entero

Podemos ver un ejemplo en:
Otros Tipos de variables

domingo, 22 de diciembre de 2013

Etiquetas duplicadas en IE-8 - Drupal

Hace  unos días me encontré con un error que me trajo de cabeza, abría mi web en cualquier navegador moderno y funcionaba a la perfección, pero en IE8 hacia cosas muy extrañas, todo indicaba a que mi JavaScript tenia alguna función no compatible con Internet Explorer 8, después de revisarlo y hacer varios cambios seguía igual, o muy parecido, con el inspector de la pagina veo que solo en IE8 me aparecían varias etiquetas que yo no había añadido, me había duplicado etiquetas div, y lo peor me las duplicaba con el mismo ID por lo que mi JS se volvía loco y no sabia por donde atacar, no entendía por que, que razón podía tener IE8 para duplicarme etiquetas?, encontré el enlace que os dejo aquí:

viernes, 6 de diciembre de 2013

Fuentes personalizadas en nuestras webs

Para agregar una fuente personalizada (que no tenga el usuario instalada en su sistema como pueden ser las tipicas como Arial) deberemos declararla en nuestros estilos; para ello:

@font-face {
    font-family: "Nombre de nuestra fuente";
    src: url(Ruta de nuestra fuente/Nombre del archivo.otf) format('opentype');
}

y despues declararla en nuestros estilos como si fuera cualquier otra:

font-family: "Nombre de nuestra fuente";
Los unicos tipos de fuente compatibles con todos los navegadores son: TTF y WOFF
Para usar un TTF tendremos que poner el formato como sigue:
format('TrueType');

Tambien es recomendable no cargar una fuente personalizada, ya sea por url desde Google Fonts u otro site, o desde nuestro propio servidor, si el usuario ya tiene la fuente en cuestion en su dispositivo, para ello deberemos llamarla del sigueinte modo:
src: local("Nombre de la Fuente")

Todo junto seria algo asi:

@font-face {
    font-family: "Nombre de nuestra fuente";
    src: local("Nombre de nuestra fuente"), url(Ruta de nuestra fuente/Nombre del archivo.otf) format('truetype');
}

Aqui os dejo un ejemplo:

body{
    font-family: "FiraOpenType";
}

@font-face {
    font-family: "FiraOpenType";
    src: url(FiraSansOT/FiraSansOT-Regular.otf) format('opentype');
}

Para esto mismo es muy interesante que veais Google Fonts

jueves, 28 de noviembre de 2013

CDN de JQuery

En estos momentos el CDN de la propia web de JQuery en su version 1.10.2 esta caido como repercurtira esto en la web?? durante cuanto tiempo durara esta caida??

Al menos disponemos del CDN de Google

martes, 19 de noviembre de 2013

Windows 8.1

Descargando la actualización... miedo me da.
Actualizacion concluida, despues de hora y media a utoconfigurandose (o eso ponia) ha arrancado sin demasiaos cambios aparentes, tengo mi sistema tal y como lo deje,

miércoles, 13 de noviembre de 2013

Mi primera colaboración en el baúl del programador

Introducción al HTML5
http://elbauldelprogramador.com/html5-2/introduccion-html5/

Unity - Establecer foco en un elemento

Hoy mismo he tenido un problema que estoy seguro le ha ocurrido a todo aquel que este comenzando con este estupendo motor.

Al establecer el Zoom cometemos algun error y en nuestra escena perdemos todos nuestros elementos, dejan de ser visibles.

Esto lo podemos solventar con algo tan tonto como Seleccionar el elemento al que queramos visualizar, y Presionar F.