Como se hizo Cut the Rope en HTML5

Me ha parecido muy interesante el artículo de los creadores de Cut the Rope | Behind the Scenes. Como desarrollador muchas veces me paso más rato investigando y leyendo como han hecho las cosas que no jugando. Sigue leyendo

Technical reviwer en Unity iOS Essentials Book

A finales de la semana pasada llegó a casa mis padres el libro Unity iOS Essentials de Packt Publishing en el que he tenido el placer de participar como Technical Reviwer.

Des de el momento que Packt contactó conmigo para participar en el proyecto ya me di cuenta de lo enriquecedora que sería la experiencia y el reto. Y así ha sido. Participar en la publicación de este libro ha sido una experiencia muy interesante en diferentes aspectos. Sigue leyendo

iOS, notificaciones locales con badge automático

El sistema de notificaciones locales en iOS nos obliga a controlar manualmente (y llevar la cuenta) del número que aparece en el badge de la aplicación. Esto requiere implementar un sistema que lleve la cuenta de las notificaciones nuevas y de las que se han leído.

Para los casos es simples os aconsejo usar una categoría que nos lleva la cuenta autoincremental de forma automática.

UILocalNotification Category

Cocoa: Reproducir música y vídeo al mismo tiempo

En ocasiones necesitas reproducir un vídeo en tu aplicacion mientras esta sonando alguna canción de fondo o incluso música del usuario. Por defecto el sistema solo tiene una sesión de audio y al encender el vídeo se va a parar la música.

Para reproducir tanto la música como el vídeo al mismo tiempo se tiene que cambiar la categoría de la sesión de audio para que crea que es un audio de ambiente.

NSError *setCategoryError = nil;

[[AVAudioSession sharedInstance]

     setCategory: AVAudioSessionCategoryAmbient

     error: &setCategoryError;];

if (setCategoryError) { /* handle the error condition */ }

De esta forma el vídeo se reproducirá como sesión de audio principal pero la de ambiente continuara sonando.

Cocoa Touch, UIButton dentro de UITableViewCell

Hay un comportamiento en UIKit que a veces resulta raro y destroza bastante el diseño de tu interfaz. En ocasiones necesitamos añadir un UIButton dentro de un UITableViewCell para dar más opciones a los usuarios.

El problema es que al pulsar sobre la celda esta se ilumina y automáticamente el botón también. Esto es porque por defecto la celda envia la señal de “hightlighted” y de “selected” a todas sus subvistas. Sigue leyendo

Cocoa: dar formato complejo a un UILabel

En ocasiones necesitamos que un mismo UILabel tenga distintos formatos de fuente. Por ejemplo: “Hora: 13:58 am”. La única forma básica de hacer esto es usando tres UILabel y adaptarlos dinámicamente con el contenido.

Pero a partir de iOS 4.0 el sistema incluya la clase NSAttributedString que permite crear un NSString y asociar a cada carácter una información de formato. El problema es que aún no hay ningún elemento del UIKit que use esta nueva funcionalidad por lo que tenemos que recurrir a vistas customizadas que la usen.

Existen algunas clases de código libre que podeís usar: Sigue leyendo

Cocoa: Macros para generar NSString

En Cocoa tenemos varias estructuras que usamos habitualmente como pueden ser CGRect, CGSize o CGPoint, por poner algún ejemplo. Normalmente estas estructuras se usan para definir las posiciones de las vistas o las capas, pero en ocasiones necesitamos mostrarlas en la consola para asegurarnos que las capas están bien colocadas.

Hay algunas macros que pueden facilitarnos la vida ya que tener que acceder a los atributos de cada estructura es bastante lento.

  • NSStringFromCGRect
  • NSStringFromCGSize
  • NSStringFromCGPoint

Usandolas con NSLog tenemos una forma fácil de mostrarlas en la consola.