Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如果UITableView没有条目,则显示警报_Objective C_Ipad_Uitableview_Ios5 - Fatal编程技术网

Objective c 如果UITableView没有条目,则显示警报

Objective c 如果UITableView没有条目,则显示警报,objective-c,ipad,uitableview,ios5,Objective C,Ipad,Uitableview,Ios5,在我的iPad应用程序中,如果UITableView上没有条目或所有单元格都是空的,并且如果按下某个特定按钮,应该会发出警报。在UITableView中检查所有单元格是否为空的条件是什么 谢谢和问候 PC检查数据源的计数 例如,如果您使用的是数组myArrayData: if ([myArrayData count] == 0) { // Do code here } 好吧,你可以列举所有的单元格,看看它们是否包含任何内容。例如: BOOL isEmpty = false; UITab

在我的iPad应用程序中,如果UITableView上没有条目或所有单元格都是空的,并且如果按下某个特定按钮,应该会发出警报。在UITableView中检查所有单元格是否为空的条件是什么

谢谢和问候


PC检查数据源的计数

例如,如果您使用的是数组
myArrayData

if ([myArrayData count] == 0) {
    // Do code here
}

好吧,你可以列举所有的单元格,看看它们是否包含任何内容。例如:

BOOL isEmpty = false;
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:1]];
// Then depending on what kind of value you have in it...
if (cell.textLabel.text == @""){
// Keep going through the enumeration until there's actually something and then set isEmpty to true!
}

您可以使用ViewWillAspect方法检查您的需求

如果您的按钮被按下(我假设是在另一个视图控制器上?),您可能希望在按下按钮时实际设置一个BOOL,并在该视图控制器中引用该BOOL

通常,表视图使用数组(或某些对象)来保存其值,您只需检查(myarray.count>0)是否有任何表单元格


如果您留下更多关于您的设置的信息,我将很高兴更具体地满足您的需求。祝你好运

除了亚当·约翰逊的答案

如果您的数据来自核心数据,并且您正在实现一个
NSFetchedResultController

if ([self.fetchedResultsController.fetchedObjects count] > 0) {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"UIAlertView"
    message:@"My message" delegate:self cancelButtonTitle:@"Cancel"
    otherButtonTitles:@"OK", nil];
    [alert show];
    [alert release];
}

如果使用CoreData,则可以通过以下NumberOfRowInstruction检测写入表的行数

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{

    id <NSFetchedResultsSectionInfo> sectionInfo = [[self.fetchedResultsController sections] objectAtIndex:section];

    if (sectionInfo.numberOfObjects == 0) {

              //Here you can use your code
    }

    return [sectionInfo numberOfObjects];
}
-(NSInteger)表视图:(UITableView*)表视图行数节:(NSInteger)节
{
id sectionInfo=[[self.fetchedResultsController节]objectAtIndex:section];
如果(sectionInfo.numberOfObjects==0){
//在这里您可以使用您的代码
}
返回[sectionInfo numberOfObjects];
}

请提供一些代码。如何将数据放入tableview?这是一种效率极低的方法。这些单元格是从数据源生成的,应该检查数据源,而不是它创建的视图。