如果为空,则显示UIImage而不是TableView

时间:2011-10-02 21:04:57

标签: iphone objective-c cocoa-touch uitableview uiimageview

我有一个NSFetchResultsController来加载我的tableview。

首次下载应用程序时,桌面视图中不会显示任何数据,因此我想要一张带有说明的静态图像。我有以下代码,我在viewWillAppear中调用此方法,但它无法正常工作。有什么想法吗?

- (void)checkIfEmpty
{
    if ([self.fetchedResultsController fetchedObjects] > 0)
    {
        self.defaultImage.hidden = NO;
        self.logTableView.hidden = YES;
    }
    else
    {
        self.defaultImage.hidden = YES;
        self.logTableView.hidden = NO;
    }
}

2 个答案:

答案 0 :(得分:0)

尝试在viewDidAppear中添加相同的代码。尝试使用alpha = 0而不是隐藏。尝试将相同的代码放在一个tableview委托方法中。既然你没有准确解释发生了什么,我只是把东西扔到那里。

答案 1 :(得分:0)

[self.fetchedResultsController fetchedObjects] > 0将永远为真,因为即使空数组也是对象(而不是nil)。

您需要改为使用self.fetchedResultsController.fetchedObjects.count > 0