Как я могу отслеживать изменения возвращаемого значения метода target-c - PullRequest
0 голосов
/ 17 мая 2011

Я использую Sparkle http://sparkle -project.org / framework для автообновлений в моем приложении. У меня есть элемент пользовательского интерфейса, который включает / отключает автоматические загрузки обновлений, но я не могу использовать ни привязки Interface Builder, как указано в документации для Sparkle, ни KVO, поскольку нет свойства для автоматической загрузки обновлений - только методы получения и установки. Могу ли я перехватить метод setter и вызвать обратный вызов, когда эта опция изменяется при взаимодействии интерфейса Sparkle.

Что я могу сделать в этой ситуации?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 17 мая 2011

Если есть методы getter и setter, то есть неявное свойство, даже если оно не объявлено. Вы можете использовать KVO с этим просто отлично. Фактически, в течение многих лет это был единственный способ сделать КВО; там были явных свойств нет. Какао рассматривает что-либо с подходящим названием getter и setter как свойство.

Привязки используют один и тот же механизм, поэтому вы также должны иметь возможность использовать привязки. Не позволяйте отсутствию объявленной собственности отпугивать вас.

0 голосов
/ 17 мая 2011

Зачем вам нужно отслеживать эти изменения?Большинство известных мне приложений проверяют наличие обновлений только при запуске, а не во время выполнения.Поэтому вы должны проверить и обновить или просто продолжить работу с приложением.

Если нет другого способа, таймер (NSTimer) всегда будет работать для периодической проверки.

...