NSLevelIndicator: обнаружение клика и обновление
Я хочу использовать NSLevelIndicator
управлять рейтингами в моих приложениях, но я не понимаю, как обнаружить клик по нему и обновить оценки.
Это код: свойство rate
создается в файле.h, и это IBOutlet, правильно связанный в IB.
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
NSLevelIndicatorCell *cell = [[NSLevelIndicatorCell alloc] initWithLevelIndicatorStyle:NSRatingLevelIndicatorStyle];
[cell setMinValue:0.0];
[cell setMaxValue:5.0];
[cell setFloatValue:3.0];
[cell setTarget:self];
[cell setAction:@selector(click:)];
[self.rate setCell:cell];
}
- (IBAction)click:(id)sender
{
//How to detect change in rating here???
}
2 ответа
Решение
Я выкладываю решение для других людей с такой же "проблемой".
Причина, по которой взаимодействие с пользователем не работает для меня, заключается в том, что мне нужно позвонить [cell setEnabled:YES]
, Возможно, это свойство установлено в NO
по умолчанию.
Возможно, это ошибка, но setEnabled: не решает никаких проблем, а setEditable: do.