Остерегайтесь перечисленной выше техники NSString.Если в вашей строке отсутствует двоеточие, вы потерпите крах, получив objectAtIndex: 1.(Я бы прокомментировал это, но у меня недостаточно реп.)
Это должно быть немного более надежным.
int hours, minutes;
if (2 == sscanf([timeString UTF8String], "%d:%d", &hours, &minutes))
{
// congratulations, you did it
}
else
{
// the string was malformed
}