SORU
24 Mayıs 2009, Pazar


PerformSelector:withObject nasıl kullanılır:afterDelay: Cocoa?ilkel türleri ile

2* *NSObject Bu yöntem bana belirli bir süre sonra nesne bir değişken ile nesne üzerinde bir yöntemi çağırmak için izin verir. Olmayan bir nesne değişkeni yöntemleri (örneğin değer vermez, yüzer, yapılar, olmayan nesne işaretçileri, vb.) için kullanılamaz.

Bu nedirbasitolmayan bir nesne değişkeni bir yöntem ile aynı şeyi elde etmek için bir yol? Düzenli için performSelector:withObject: çözüm NSInvocation Bu arada gerçekten karmaşık olan) kullanmak olduğunu biliyorum. Ama "" bölümü. gecikme işlemek için nasıl bilmiyorum

Teşekkürler

CEVAP
14 Kasım 2009, CUMARTESİ


Değiştiremeyeceğim bir şey NSİnvocation kullanarak derdim:

SEL theSelector = NSSelectorFromString(@"setOrientation:animated:");
NSInvocation *anInvocation = [NSInvocation
            invocationWithMethodSignature:
            [MPMoviePlayerController instanceMethodSignatureForSelector:theSelector]];

[anInvocation setSelector:theSelector];
[anInvocation setTarget:theMovie];
UIInterfaceOrientation val = UIInterfaceOrientationPortrait;
BOOL anim = NO;
[anInvocation setArgument:&val atIndex:2];
[anInvocation setArgument:&anim atIndex:3];

[anInvocation performSelector:@selector(invoke) withObject:nil afterDelay:1];

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GWTLecturer

    GWTLecturer

    18 EKİM 2012
  • pissengehen

    pissengehen

    26 EYLÜL 2006
  • TomOdellVEVO

    TomOdellVEVO

    29 Mayıs 2012