Оператор ==
имеет смысл только тогда, когда оба типа совместимы, что не относится к строкам и числам с плавающей запятой. Одна сторона должна быть явно преобразована в другую.
Вы можете конвертировать NSString в число с плавающей точкой:
if ([myString floatValue] == myFloat) {
// Note: Use "fabs(a - b) < epsilon" to avoid inequality due to precision lost.
или преобразовать число с плавающей точкой в строку NSS (очень необычно):
if ([myString isEqualToString:[NSString stringWithFormat:@"%g", myFloat]]) {
// Note: make sure the string is encoded as "%g" as well.