Quiero que mi iPhone cambie de color cuando lo agite. ¿Cómo implemento esto?

Tendría que usar el acelerómetro para detectar movimientos o sacudidas en el iPhone.
Después de implementar el
Configure el acelerómetro:
UIAcceleremoter * accel = [UIAccelerometer sharedAccelerometer];
Configure sus intervalos de actualización y delegue:
[accel setUpdateInterval: 0.1];
[accel setDelegate: self];

Y luego simplemente implemente sus métodos:
– (nulo) acelerómetro: (UIAccelerometer *) meter didAccelerate: (UIAcceleration *) accel {
// usa [accel x] y [accel y] para lo que sea
}

Una búsqueda en Google le daría muchos sitios con respuestas.
De hecho, creo que hay una manera más fácil de implementar esto solo para detectar sacudidas (sin la necesidad de cambios en las coordenadas, etc.)

Stackoverflow debería ser tu amigo:
http://stackoverflow.com/questio…
http://stackoverflow.com/questio…