2010-12-02 74 views
0

我有一個UIView上的動畫塊,並想通過我的animationDidStopSelector一個對象,以便當我的動畫完成時,該對象可以從數組中刪除。通過@選擇器對象

以下代碼不起作用。

[UIView setAnimationDidStopSelector:@selector(animationDidStopWithObject:)]; 
    self.dialogController.view.alpha=1; 
[UIView commitAnimations]; 

    [self.view addSubview:self.dialogController.view]; 
} 

- (void)animationDidStopWithObject:(NSString*)obj { 
    [items removeObject:obj]; 
    [self.tableView reloadData]; 
} 

我該如何將我的選擇器傳遞給對象?

謝謝

回答

2

檢查UIView參考。選擇傳遞給+ setAnimationDisStopSelector:方法必須是形式

- (void)animationDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context 

你可以通過你的對象使用的動畫背景下,選擇的(void *的指針參數+ beginAnimations通過:背景:電話)

+0

謝謝...我想用塊API(更簡單),但不能用於傳統用戶。 – joec 2010-12-02 12:30:52

0

你的選擇需要遵循簽名:

- (void)animationDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context

而且通過它的自定義對象,這就是context是做什麼用的:你[UIView beginAnimations:someId context:yourCustomObject];設置。請注意,yourCustomObject不會保留!