사용자가 textFieldShouldReturn
메서드를 호출 할 때마다 새 테이블 셀을 만듭니다. 모든 셀에 다른 타이머가 있으므로 모든 셀에 자막으로 타이머를 추가하고 싶습니다. 그리고 타이머가 끝나면 셀을 파괴해야합니다.UITableView 셀의 타이머
여기 길 찾기 만하고 있습니다. 어떻게해야할까요?
사용자가 textFieldShouldReturn
메서드를 호출 할 때마다 새 테이블 셀을 만듭니다. 모든 셀에 다른 타이머가 있으므로 모든 셀에 자막으로 타이머를 추가하고 싶습니다. 그리고 타이머가 끝나면 셀을 파괴해야합니다.UITableView 셀의 타이머
여기 길 찾기 만하고 있습니다. 어떻게해야할까요?
간단한 방법은 CountDown 클래스와 CountDownDelegate 프로토콜을 만드는 것입니다. 카운트 다운이 0 countDownDidReachesZero:(CountDown *)countDown
그런 다음의 UIViewController (또는있는 UITableViewController) 배열의 카운트 다운의 목록을 유지 도달하고 준수 할 때
카운트 다운 클래스는 타이머를 처리하고 대리자의 메소드를 호출하는 반응 할 것이다 CountDownDelegate.
- (void)countDownDidReachesZero:(CountDown *)countDown
{
NSMutableArray *array = [self.countdowns mutableCopy];
[array removeObject:countDown];
self.countdowns = array; //if property is set with copy flag
[self.tableView reloadData]; // get index and remove cell with effect would be better
}
- (BOOL)textFieldShouldReturn:(UITextField*)textField
{
NSMutableArray *array = [self.countdowns mutableCopy];
[array addObject:[[CountDown alloc] init]];
self.countdowns = array;
[self.tableView reloadData]; //or add the cell with effect
return YES;
}
detailLabel.text를 업데이트하려면 CountDownDelegate 프로토콜을 사용하십시오. 좋은 일은 모든 countDown을 업데이트하는 정적 NSTimer를 하나만 가지는 것입니다.
셀은 데이터, 타이머 등을 저장할 수있는 뷰가 아니므로 모델에 있어야 모델이보기에 테이블보기 셀을 피드해야합니다. – rckoenes
레이블에 타이머를 표시 할 수 있으며 매 초마다 표를 다시로드해야합니다. –
"해당 셀에 타이머를 부제목으로 추가"란 의미를 명확히하십시오. 그들이 스스로를 파괴하기 전에 남은 시간을 보여주고 싶습니까? – RyanR