我有一個計數,而且我正在使用帶有徽章的單元格。我想要的是,當我得到這個數字,設置徽章號碼爲0,然後動畫從0增加到一些計數。動畫整數增加並在特定數字上停止
這裏是我嘗試過,但沒有工作:
for (int i = 0 ; i<=item.count; i++) {
int64_t delayInSeconds = .1f;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
[UIView animateWithDuration:0.1f animations:^{
cell.badgeString = [NSString stringWithFormat:@"%d",i];
}];
NSLog(@"%@",cell.badgeString);
});
}
它沒有動畫。我在tableView:cellForRowAtIndexPath
中這樣做,然後在返回單元格之前這樣做,這是問題所在。
謝謝!
這很有趣,謝謝。我不知道從哪裏調用startAnimation。我認爲最好在視圖控制器中創建動畫,因爲有計數。可能只是在prepareForReuse的視圖控制器上調用一些方法。 – Devfly
這需要將單元鏈接到視圖控制器,然後視圖控制器明確地處理來自任意單元的調用,如果單元沒有引用模型的一部分,則需要在tableview中查找單元,然後複製你的一些cellForRow代碼(這只是我的假設,儘管你可能已經做了與你的實現不同的東西)。如果需要的話,最好使用視圖控制器來提供/管理從視圖到模型的鏈接(或者只是給它計數)。比管理所有單元格的動畫更清潔。 – Matt