-2
-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:
(NSIndexPath *)indexPath
{
    UITableViewCell *cellName=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell1"];
    NSDictionary *contentdict=[innerarray objectAtIndex:indexPath.row];
    static NSString *cellidentify=@"cell";
    UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:cellidentify];

}

这是我的代码,一切正常,但是当我滚动 tableview 时,即使我已经正确地给出了数组值并将委托和数据源作为 self,我也需要编写任何东西来更改 ????? 我正在使用 Xcode 4.5

4

2 回答 2

1

试试这个……可能有帮助……

-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:
(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];

    if (cell == nil)
    {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell"] autorelease];
    }

    NSDictionary *contentdict = [[NSDictionary alloc]init];
    if([innerarray count]>0)
    {
       contentdict =[innerarray objectAtIndex:indexPath.row];
    }

// Write your other cell stuff.... 

    return cell;
}
于 2012-10-23T11:15:06.433 回答
0

我认为它崩溃了,因为您没有从该cellForRowAtIndexPath方法返回任何单元格。更改cellForRowAtIndexPath如下:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];


    if (cell == nil)
    {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell"] autorelease];
    }

    //do something with the cell

   return cell;
}
于 2012-10-23T06:57:02.030 回答