lableの日付を印刷する必要があります。日付がデータベースから正しく表示されます しかし、問題はデータベースの日付と現在の日付を比較することです。 lableは "Due"という文字列を出力します。それ以外の場合は、03/05/2012のように日付を印刷します。私は私のテーブルビューをスクロールするとき、私はコントローラクラスに渡し、私は私のカスタムセルクラスに行っています このコード私はこの方法では、このコードを書かれ、その値が、私は間違っているの変化である私にiphoneで再利用可能なセルを制御する方法
- (void) updateContent: (Tasksmodal*) taskobject{
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd/MM/yyyy"];
NSString* duedate = [dateFormat stringFromDate:taskobject.DueDate];
NSDate *currentdate;
currentdate=[NSDate date];
//NSDateFormatter *dateFormat1 = [[NSDateFormatter alloc] init];
//[dateFormat1 setDateFormat:@"dd/MM/yyyy"];
NSString* duedate1 = [dateFormat stringFromDate:currentdate];
if ([currentdate compare:taskobject.DueDate]!=NSOrderedDescending) {
[email protected]"Due";
DateLable.textColor=[UIColor redColor];
}
を助けてくださいelse{
DateLable.text=duedate;
DateLable.textColor=[UIColor blackColor];
}
}
(コントローラクラス).m //表ビューセルの外観をカスタマイズします。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
TasksList * cell =(TasksList*) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[TasksList alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
}
//[[[cell contentView] subviews] makeObjectsPerformSelector: @selector(removeFromSuperview)];
taskobject=(Tasksmodal*)[self.lstTasks objectAtIndex:indexPath.row];
[cell updateContent:taskobject];
return cell;
}
ロッキーが「ARC」を使用している場合、彼は漏れていませんが、dateformatterを再利用することは良い考えです。 – rckoenes
ssteinbergしかし、私のテーブルセルをスクロールするときに、私のセルが再利用されています。値は、期限が切れて、03/05/2012のように変更されます。 – Rocky
あなたのセル管理はおそらく間違っています。 – ssteinberg