إطار التسلسل UIImageView (ق) للرسوم المتحركة والرسوم المتحركة CGTransform

StackOverflow https://stackoverflow.com/questions/1609473

سؤال

وأود مساعدة على بعض الاستراتيجيات لتسلسل بعض الرسوم المتحركة.

وأنا subclassed UIImageView كي أتمكن من كتابة بعض الإجراءات مخصص للرسوم المتحركة على صورة. I تنفيذ عدد قليل من الطرق لاستخدامها الإجراءات التي يمكنني أن أدعو صورة بلدي على سبيل المثال:

-(void)rotateAnim; //rotates the image by a few degrees using a CGAffine Transform

-(void)numbersFlashAnim; //uses the UIImageVew.animationImages array for a 14 frame animation.

-(void)moveLeftAnim; //uses another CGAffine Transform to change the imageView's position.

في بلدي طريقة viewDidLoad I إنشاء مثيل من بلدي فرعية UIImageView. ما هي الطرق الموجودة لاستدعاء هذه الحركات في تسلسل؟

وكنت أفكر في استخدام NSTimer للتعامل مع الرسوم المتحركة، ولكنه لم يكن متأكدا مما إذا كان يمكن أن تكتب كائن NSTimer للتعامل مع المكالمات طريقة متعددة.

وعلى سبيل المثال:

[imageView rotateAnim]; //when this animation is done, I want to call:
[imageView numbersFlashAnim];

ولقد رأيت العديد من الأسئلة فيما يتعلق باستخدام وNSTimer، ولكن أيا التي تتعلق على وجه التحديد لهذه المشكلة. ملاحظة: رأيت أن مستندات ديف في الموقع التفاح أيضا يوصي استخدام performSelector: withObject: afterDelay: في بعض الحالات ولكن أتساءل عما اذا كان من شأنها أن توفر ما يكفي من المرونة.

وبالإضافة إلى ذلك، لقد اتخذت بالفعل نظرة على الإطار Cocos2d، وعلى الرغم من أنني يمكن استخدام أساليبهم ~. (الإجراءات تسلسل: الخ،) أنا اختيار حل هذه المشكلة مع UIKit / مؤسسة، الخ

هل كانت مفيدة؟

المحلول

هل تستخدم الرسوم المتحركة؟ أعني يمكنك تدوير الصورة داخل [UIView beginAnimations: (NSString *) animationID السياق: (الفراغ *) السياق] كتلة. هناك يمكنك إضافة أسلوب مندوب من شأنها أن يسمى بعد انتهاء الرسوم المتحركة الحالية. وهناك يمكنك الاتصال numbersFlashAnim الخاص بك. (عذرا لغتي الإنجليزية ؛-))

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top