2013-02-03 58 views
-1

好吧,夥計們... 希望這將是另一個快速。performSelector:withObject:afterDelay:不會接受我的自定義UIImageView指針,爲什麼不呢?

我有一個類MonsterView,擴展UIImageView,擴展NSObject。

我都宣稱含有類MonsterView的對象,看起來像這樣一個MonsterView指針稱爲myMonster ...

MonsterView* myMonster = [monsterArray objectAtIndex:0]; 

現在指針myMonster指向類MonsterView的對象。

我有這樣的方法:

-(void) takeTurnHostile:(MonsterView*) monster 
{ 
    // Do Stuff 
} 

我想通過使用performSelector ... 像這樣調用這個方法:

[self performSelector:@selector(takeTurnHostile) withObject:myMonster afterDelay:0.1]; 

血淋淋的機器不會有任何這樣的廢話。 爲什麼要以所有善良和聖潔的名義來做這件事?

更重要的是,怎麼 - 我做到了?

謝謝,夥計們! J-巖

+0

嗯......謝謝,我想。是否真的有必要爲此列出我的名聲? –

回答

5
@selector(takeTurnHostile) 

應該

@selector(takeTurnHostile:) 

,因爲你的選擇需要的參數,結腸是選擇名稱的一部分。

1

在選擇缺少結腸...

[self performSelector:@selector(takeTurnHostile:) withObject:myMonster afterDelay:0.1]; 
1

應該@selector(takeTurnHostile:)。你忘了結腸

1

由於H2CO3說,你必須提供冒號:

takeTurnHostile: 

冒號表示您調用的方法有1個參數。目前沒有冒號,你說要運行該方法:

-(void) takeTurnHostile 
{ 
} 
相關問題