uitableview中的多个原型单元格

时间:2015-12-28 12:20:44

标签: ios uitableview

我是iOS新手我正在研究uitableview cell。我想以下面的方式实现uitableview。 Expected Result

这是一节。 假设数组有3个条目,应该出现3个相似的部分。

我使用NSUserDefaults存储数据。 因此,所有数据首先被提取到NSMUtableArray中。数组中的数据存储为,假设UserInfo是我的数组:

[“raj”,“test1”,“test2”,“Mon”],----第1行

[“tiya”,“test3”,“test2”,“Tues”],-----第2行

[“niha”,“test1”,“test5”,“Wens”] -------第3行

如何使用uitableTable视图

实现上述功能

3 个答案:

答案 0 :(得分:0)

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
  {
    // Return the number of sections.
     return Array.count;
   }

   - (NSInteger)tableView:(UITableView *)tableView   numberOfRowsInSection:(NSInteger)section
     {
          // Return the number of rows in the section.
        return 1;
      }


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


     static NSString *CellIdentifier = @"cell";
     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

   UILabel *name = (UILabel*)[cell.contentView viewWithTag:1];
   UILabel *test1 = (UILabel*)[cell.contentView viewWithTag:2];
   UILabel *test2 = (UILabel*)[cell.contentView viewWithTag:3];
   UILabel *day = (UILabel*)[cell.contentView viewWithTag:4];  
     name.text = @"raj";
     test1.text = @"test1";
     test1.text = @"test2";
     day.text = @"Mon";
     return cell;



   }

答案 1 :(得分:0)

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
  {
    retune 1;
   }
    - (NSInteger)tableView:(UITableView *)tableView   numberOfRowsInSection:   (NSInteger)section
 {
           // Return the number of rows in the section.
      return [your array count];
     }

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

      static NSString *CellIdentifier = @"cell";
      UITableViewCell *cell = [tableView   dequeueReusableCellWithIdentifier:CellIdentifier];
     if (cell == nil) { 
   cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero   reuseIdentifier:CellIdentifier]];
}   

   // alloc label for different rows
     if(indexpath.row==0)
     cell.lbl.text = @"raj";
    cell.lbltest1.text = @"test1";
    cell.lbltest2.text = @"test2";
     cell.lblday.text = @"Mon";
   }

   if(indexpath.row==1)
 {
     cell.lbl.text = @"tiya";
     cell.lbltest1.text = @"test3";
     cell.lbltest1.text = @"test2";
     cell.lblday.text = @"Tues";

}

else if(indexpath.row==2)
 {
 cell.lbl.text = @"niha";
 cell.lbltest1.text = @"test1";
 cell.lbltest1.text = @"test5";
 cell.lblday.text = @"Wens";
}
 return cell;

}

答案 2 :(得分:0)

这里有一点暗示:

 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
      {
         return [yourArray count];
      }

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
       {
            for(int i=0; i<[yourArray count];i++)
       {

        if (indexPath.section == i)
        {
                titleForCell=[yourArray objectAtIndex:i]//test i
                descriptionForCell=[yourArray objectAtIndex:i];// time i
        }
            cell.textLabel.text=titleForCell;
            cell.detailTextLabel.text=descriptionForCell;
       }
    return cell;
    }