Параметры внутри начинают анимацию и контекст
Я изучал начало анимации с помощью UIView, обычно в большинстве уроков они всегда используют один и тот же синтаксис:
[UIView beginAnimations:nil context:NULL];
Я вижу в коде, что внутри beginAnimation мы можем поместить nsstring, а в контексте void функцию, верно? Для этого я делаю это:
[UIView beginAnimations:@"Will Start" context:@selector(start)];
-(void)start{
NSLog(@"Animation Running");
}
Но nsstring 'start' не показывался мне, а функция void 'start' не вызывалась. Я не знаю, делаю ли я это неправильно, но что означают эти опции BeginAnimation типа NSString и контекст типа типа void? Может ли кто-нибудь дать мне пример?
1 ответ
Похоже, вы не совсем понимаете, как beginAnimations:context:
метод работает. Прежде всего, animationId
это строка NSString, которая просто идентифицирует анимацию. Во-вторых, данные, которые вы передаете context
на самом деле просто любые данные, которые вы хотите. Указатель на функцию, объект и т. Д.
Итак, что вы делаете после звонка [UIView beginAnimations:context:]
это отправить разные setAnimation
сообщения для установки свойств, изменения значений вида на значения (положение, цвет, альфа), к которым вы в конечном итоге хотите добраться, и, наконец, отправку [UIView commitAnimations]
сообщение.
Хороший учебник, который объясняет это более подробно здесь.