gpt4 book ai didi

iphone - NSDate 字符串未显示在 TableViewCell 中

转载 作者:行者123 更新时间:2023-11-29 10:54:55 25 4
gpt4 key购买 nike

我已经安装了 iOS 7 的 GM 版本,成功升级了将我的应用程序更新到 iOS 7 所需的一切,但有一件事我无法解决与 NSDate 相关的问题。它在 iOS 6 上运行良好,但在 iOS 7 上不起作用。

在一个名为 TheItem.m 的文件中,我正在执行以下操作:

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
NSLog(@"TIMEEEEEEEEEEEEEEE %@", currentString);
[self setPubTime:currentString];
}

然后在:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"ItemsCell";

//ItemsViewCell Is class of UITableViewCell having the IBOutlet pubTimeLabel
ItemsViewCell *cell = (ItemsViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

TheItem *item = [[channel items] objectAtIndex:[indexPath row]];

cell.pubTimeLabel.text = [item pubTime];

// NSLog(@"PUB PUB %@", item.pubTime);


return cell;
}

NSLogs 正在显示日期字符串,但它没有显示在 tableviewcell 中。它在 iOS 6 上运行良好,但自从我将其更新到 iOS 7 后,应该在 tableviewcell 中显示日期字符串的标签什么也没显示。尝试在 iOS 开发论坛中提出相同的问题,根据我收到的答案,这不是 iOS 7 更新问题。

谁能指出哪里出了问题?提前致谢。

更新:我已经在我的设备上安装了 iOS 7 GM,然后我从 App Store 安装了我的一个应用程序,该应用程序是使用相同的项目提交的,但是日期标签没有得到显示在其中。

更新: 以下是我为解决问题所做的几件事:使用 NSLogs 查看它是否在任何时候为 nil 而不是,更改 tableviewcell 高度,创建一个新标签,创建一个新的 socket ,删除了背景和单元格图像,更改了标签的字体和颜色,在模拟器和设备中尝试了这个项目,但仍然没有成功。

更新:好的,根据我收到的评论,我似乎有一些背景或颜色问题或类似问题。我已经做了一些更多的故障排除,它与颜色或背景或任何类似的东西无关。在下面的代码中我做了一些替换:

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
// [self setPubTime:currentString]; THIS LINE IS REPLACED WITH THE FOLLOWING

NSDateFormatter *df1 = [[NSDateFormatter alloc] init];
[df1 setDateFormat:@"EEE, d MMM yyyy hh:mm:ss ZZZZ"];
NSDate *newDate = [df1 dateFromString:currentString];
NSDateFormatter *df2 = [[NSDateFormatter alloc] init];
[df2 setDateFormat:@"EEE,d MMM yyyy"];
NSString *dateString = [df2 stringFromDate:newDate];
NSLog(@"DATE STRING %@", dateString);
[self setPubTime:dateString];
}

现在同一个标​​签显示日期,证明标签没有颜色或背景问题。我不使用此更新代码的唯一问题是它在少数单元格中显示日期,而在少数单元格中不显示任何内容并重新调整为空。

最佳答案

它在 hh 处失败,您必须在日期格式化程序中使用 HH 才能使其正常工作。

只需使用 24(HH) 或 12(hh) 小时制:

NSDateFormatter *df1 = [[NSDateFormatter alloc] init];
df1.locale = locale = [[NSLocale alloc] initWithLocaleIdentifier:@"EN"];
[df1 setDateFormat:@"EEE, d MMM yyyy HH:mm:ss ZZZZ"];
NSDate *newDate = [df1 dateFromString:currentString];
NSLog(@"NEW DATE %@", newDate);

希望对您有所帮助。谢谢!

关于iphone - NSDate 字符串未显示在 TableViewCell 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18836942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com