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

  • maxman.tv

    maxman.tv

    29 EKİM 2013
  • Ordetta Price

    Ordetta Pric

    12 EYLÜL 2011
  • ShoSho

    ShoSho

    20 Ocak 2010