Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Числа из TextField в CGFloat - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Бесконечный цикл с итерацией в 1 миллисекунду http://www.cyberforum.ru/objective-c/thread1050621.html
Приветствую, подскажите пожалуйста, есть ли какая нибудь функция в objective-c которая бесконечно выполняется с итерацией в 1 миллисекунду? Например в actionscript3 такой метод называется...
Objective-C Как удалить объект из NSMutableArray? Здравствуйте, у меня возникла неразрешимая проблема. Есть массив NSMutableArray *array, который содержит следующие значения (@"1", @"2", @"3", @"4", @"5"). Я удаляю первый элемент и вроде должен... http://www.cyberforum.ru/objective-c/thread1050028.html
Objective-C Удалить NSBezierPath
Создаю полигон mainPath (NSBezierPath). Отдельно от основного "пути" есть еще один NSBezierPath. Его назвал guidLine (серая направляющая линия, создается от последней добавленной (кликом мыши) точки...
Objective-C Англоязычная версия приложения
Здравствуйте, но же реализовать англоязычную версию версию приложения, мне говорили что "нужно добавить в проект файл Localizable.strings и все переменные типа NSString сделать NSLocalizableString"...
Objective-C Во что компилируется Objective-C приложение http://www.cyberforum.ru/objective-c/thread1044038.html
Всем привет! Во что компилируется приложение, написанное на Objective-C? Нативный код или промежуточный? Используется ли виртуальная машина? Если ли в этих вопросах разница на iOS и MacOS?
Objective-C Передача инициализированных переменных из одного класса в другой (objective c, XCODE 5.0.2) Друзья помогите решить задачку! Я в этом деле новичек, поэтому прошу не винить за глупые вопросы)) Итак, создаю приложение для iPhone в XCODE 5.0.2, язык программирования Objective C. Пишу... подробнее

Показать сообщение отдельно
Xavier
in god we trust
74 / 74 / 8
Регистрация: 20.04.2012
Сообщений: 201
26.12.2013, 13:33
Ради интереса попробовал реализовать все через KVO.

Сделал так:
1) создал 2 TextField-a в IB (можно и больше не суть важно)
2) соединил их все с outlet collection:

Objective-C
1
@property (strong, nonatomic) IBOutletCollection(UITextField) NSArray *tf;
3) так-же создал у моего контролера property NSMutableArray (туда складываются значения наших чисел введенных пользователем) :
Objective-C
1
2
3
4
5
@interface MYViewController ()
 
@property(nonatomic,strong)NSMutableArray *floats;
 
@end
4) в методе viewDidLoad моего контроллера назначил объекты массива floats наблюдателями за изменениями в textField
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
- (void)viewDidLoad
{
    [super viewDidLoad];
    self.floats=[[NSMutableArray alloc]init];
    [self.tf enumerateObjectsUsingBlock:^(UITextField* obj, NSUInteger idx, BOOL *stop) {
        NSMutableString *fl=[[NSMutableString alloc]initWithFormat:@"%d",0];
        [self.floats addObject:fl];
        [obj addObserver:self.floats[idx] forKeyPath:@"text.floatValue" options:NSKeyValueObservingOptionNew context:nil];
    }];
    
    NSLog(@"done");
    // Do any additional setup after loading the view, typically from a nib.
}
Кстати оказалось что NSNumber я не могу использовать так как он immutable, так что пришлось для хранения чисел использовать NSMutableString.

5) добавил категорию для NSMutableString для отлова изменений
Objective-C
1
2
3
4
5
6
7
8
@implementation NSMutableString (observe)
 
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{
    NSNumber *newNumber=change[@"new"];
    [self setString:[NSMutableString stringWithFormat:@"%@",newNumber]];
}
 
@end
В итоге получаем массив с NSMutableString из них берем floatValue и получаем наши float числа для каждого textField которые потом можно использовать в вычислениях как угодно. И они автоматически изменяются если пользователь ввел новые числа в поле.

Как вариант ТС может использовать этот способ для "отлова" введенных пользователем чисел и дальнейшее их использование.

Интересует также мнение других целесообразно ли вообще использовать такой способ?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru