0

からテーブルビューを表示しているiPhoneアプリケーションがありますNSMutableArray。すべてが正常に機能しています。グループ化されたテーブルビューの2つのセクションに表示する必要があります。これにより、配列の最初の要素が最初のセクションに表示されます。常に、2番目のセクションのレミング要素。cellforrowatindexpathでこのように実行すると、2番目のセクションで最初のセルが空になります。`

NSMutableDictionary *dicttable=[self.array objectAtIndex:indexPath.row];
   NSString *head=[[dicttable objectForKey:@"message"] description];

 if(indexPath.section==0)
 {
    if([head isEqualToString:@"ddd"])
    {
        label.textAlignment = UITextAlignmentLeft;
        label.textColor =[UIColor darkGrayColor];
        label.font = [UIFont fontWithName:@"Helvetica" size:16];

        label.text = head;
        label.tag=100;
        [cell.contentView addSubview:label];
     }
  }
  else
  {
     if(![head isEqualToString:@"ddd"])
     {
        label.textAlignment = UITextAlignmentLeft;
        label.textColor =[UIColor darkGrayColor];
        label.font = [UIFont fontWithName:@"Helvetica" size:16];

        label.text = head;
        label.tag=100;
        [cell.contentView addSubview:label];

     }      

 }

最初のセクションでこのdddが必要で、次のセクションで残りの要素が必要です。私はそれをsinle配列でやり続けたいと思います。

4

2 に答える 2

2

これを試して

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

       NSInteger row = indexPath.section!=0?indexPath.row+1:indexPath.row;
       NSMutableDictionary *dicttable=[self.array objectAtIndex:row];
       NSString *head=[[dicttable objectForKey:@"message"] description];
        if(indexPath.section==0)
     {
        if([head isEqualToString:@"ddd"])
        {
            label.textAlignment = UITextAlignmentLeft;
            label.textColor =[UIColor darkGrayColor];
            label.font = [UIFont fontWithName:@"Helvetica" size:16];

            label.text = head;
            label.tag=100;
            [cell.contentView addSubview:label];
         }
      }
      else
      {
         if(![head isEqualToString:@"ddd"])
         {
            label.textAlignment = UITextAlignmentLeft;
            label.textColor =[UIColor darkGrayColor];
            label.font = [UIFont fontWithName:@"Helvetica" size:16];

            label.text = head;
            label.tag=100;
            [cell.contentView addSubview:label];

         }      

     }

  }
于 2013-03-26T08:25:46.443 に答える
1
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 2;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    if (section == 0)
              return 1;
    return [yourArray count] - 1;
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    if (section == 0) {
              // Your first section

        }
    else {
           // Your second section
        }

}
于 2013-03-26T08:09:12.413 に答える