- Contents in the UItableViewcell are not displayed after inserting new contents in cell
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- NSMutableArray *arrMain=[NSMutableArray arrayWithObjects: cnfqty, cnftitle, cnfrate, nil];
- finarray=[[NSMutableArray alloc]init];
- [finarray addObjectsFromArray:arrMain];
- NSLog(@"%@",finarray);
- }
- - (void)viewDidUnload
- {
- [super viewDidUnload];
- // Release any retained subviews of the main view.
- // e.g. self.myOutlet = nil;
- }
- - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
- {
- return (interfaceOrientation == UIInterfaceOrientationPortrait);
- }
- #pragma mark - Table view data source
- - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
- {
- // Return the number of sections.
- return 1;
- }
- -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
- {
- return 150.0;
- }
- - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
- {
- // Return the number of rows in the section.
- return ( [finarray count] / 3 );
- }
- - (UITableViewCell *) getCellContentView:(NSString *)cellIdentifier {
- UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
- UILabel *tempLabel;
- //UIImage *tempImage;
- /* Create UI elements - Customize as you want your text to appear */
- CGRect myFirstLabel = CGRectMake (65, 10, 200, 15);
- CGRect mySecondLabel = CGRectMake (65, 25, 200, 15);
- CGRect myThirdLabel = CGRectMake (65, 40, 200, 15);
- // CGRect myImage = CGRectMake (10, 10, 50, 50);
- //Initialize first label
- tempLabel = [[UILabel alloc] initWithFrame: myFirstLabel];
- tempLabel.tag = 1;
- tempLabel.font = [UIFont boldSystemFontOfSize:12];
- tempLabel.textColor = [UIColor lightGrayColor];
- [cell.contentView addSubview: tempLabel];
- //Initialize second label
- tempLabel = [[UILabel alloc] initWithFrame: mySecondLabel];
- tempLabel.tag = 2;
- tempLabel.font = [UIFont boldSystemFontOfSize:12];
- tempLabel.textColor = [UIColor lightGrayColor];
- [cell.contentView addSubview: tempLabel];
- //Initialize third label
- tempLabel = [[UILabel alloc] initWithFrame: myThirdLabel];
- tempLabel.tag = 3;
- tempLabel.font = [UIFont boldSystemFontOfSize:12];
- tempLabel.textColor = [UIColor lightGrayColor];
- [cell.contentView addSubview: tempLabel];
- //Initialize your picture
- //imgTemp = [[UIImageView alloc] initWithFrame: myImage];
- //imgTemp.tag = 4;
- //[cell.contentView addSubview: tempImage];
- return cell;
- }
- - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
- {
- static NSString *CellIdentifier = @"aCell";
- UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
- if (cell == nil) {
- cell = [self getCellContentView: CellIdentifier];
- }
- //This will create the actual UI elements
- UILabel *tempLabel1 = (UILabel *)[cell viewWithTag: 1];
- UILabel *tempLabel2 = (UILabel *)[cell viewWithTag: 2];
- UILabel *tempLabel3 = (UILabel *)[cell viewWithTag: 3];
- //UIImageView *tempImage = (UIImageView *)[cell viewWithTag: 4];
- // Populate the labels
- NSString *firstText = [NSString stringWithString: [finarray objectAtIndex: 3*(indexPath.row)]];
- NSString *secondText = [NSString stringWithString: [finarray objectAtIndex: 3*(indexPath.row) + 1]];
- NSString *thirdText = [NSString stringWithString: [finarray objectAtIndex: 3*(indexPath.row) + 2]];
- // Populate the picture
- //UIImage *picture = [[UIImage alloc] initWithData:theObjectToPutInCell.picture];
- tempLabel1.text = firstText;
- tempLabel2.text = secondText;
- tempLabel3.text = thirdText;
- // tempImage.image = picture;
- return cell;
- }
- }
- @end
- // Cell appearence editing
- - (UITableViewCell *) getCellContentView:(NSString *)cellIdentifier {
- UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
- UILabel *tempLabel;
- UIImage *tempImage;
- /* Create UI elements - Customize as you want your text to appear */
- CGRect myFirstLabel = CGRectMake (65, 10, 200, 15);
- CGRect mySecondLabel = CGRectMake (65, 25, 200, 15);
- CGRect myThirdLabel = CGRectMake (65, 40, 200, 15);
- CGRect myImage = CGRectMake (10, 10, 50, 50);
- //Initialize first label
- tempLabel = [[UILabel alloc] initWithFrame: myFirstLabel];
- tempLabel.tag = 1;
- tempLabel.font = [UIFont boldSystemFontOfSize:12];
- tempLabel.textColor = [UIColor lightGrayColor];
- [cell.contentView addSubview: tempLabel];
- //Initialize second label
- tempLabel = [[UILabel alloc] initWithFrame: mySecondLabel];
- tempLabel.tag = 2;
- tempLabel.font = [UIFont boldSystemFontOfSize:12];
- tempLabel.textColor = [UIColor lightGrayColor];
- [cell.contentView addSubview: tempLabel];
- //Initialize third label
- tempLabel = [[UILabel alloc] initWithFrame: mySecondLabel];
- tempLabel.tag = 3;
- tempLabel.font = [UIFont boldSystemFontOfSize:12];
- tempLabel.textColor = [UIColor lightGrayColor];
- [cell.contentView addSubview: tempLabel];
- //Initialize your picture
- imgTemp = [[UIImageView alloc] initWithFrame: myImage];
- imgTemp.tag = 4;
- [cell.contentView addSubview: tempImage];
- return cell;
- }
- - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
- {
- static NSString *CellIdentifier = @"aCell";
- UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
- if (cell == nil) {
- cell = [self getCellContentView: CellIdentifier];
- }
- //This will create the actual UI elements
- UILabel *tempLabel1 = (UILabel *)[cell viewWithTag: 1];
- UILabel *tempLabel2 = (UILabel *)[cell viewWithTag: 2];
- UILabel *tempLabel3 = (UILabel *)[cell viewWithTag: 3];
- UIImageView *tempImage = (UIImageView *)[cell viewWithTag: 4];
- // Populate the labels
- NSString *firstText = [NSString stringWithString: [finarray stringAtIndex: 3*(indexPath.row)]];
- NSString *secondText = [NSString stringWithString: [finarray stringAtIndex: 3*(indexPath.row) + 1]];
- NSString *thirdText = [NSString stringWithString: [finarray stringAtIndex: 3*(indexPath.row) + 2]];
- // Populate the picture
- UIImage *picture = [[UIImage alloc] initWithData:theObjectToPutInCell.picture];
- tempLabel1.text = firstText;
- tempLabel2.text = secondText;
- tempLabel3.text = thirdText;
- tempImage.image = picture;
- return cell;
- }
- - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
- {
- // Return the number of sections.
- return 1;
- }
- - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
- {
- // Return the number of rows in the section.
- return [itemsData count];
- }
- - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
- {
- // static NSString *CellIdentifier = @"Cell";
- NSString *CellIdentifier = [NSString stringWithFormat:@"%d", indexPath.row] ;
- UILabel *lblTitle = nil;
- UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
- if (cell == nil) {
- cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
- cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
- cell.selectionStyle = UITableViewCellSelectionStyleNone;
- lblTitle =[[UILabel alloc]initWithFrame:CGRectMake(5, 15, 110, 44)];
- lblTitle.backgroundColor = [UIColor clearColor];
- lblTitle.textColor = [UIColor whiteColor];
- lblTitle.font = [UIFont systemFontOfSize:11.0];
- lblTitle.tag = 1;
- lblTitle.numberOfLines = 0;
- UILabel *lblType =[[UILabel alloc]initWithFrame:CGRectMake(125, 0, 75, 44)];
- lblType.backgroundColor = [UIColor clearColor];
- lblType.textColor = [UIColor whiteColor];
- lblType.font = [UIFont systemFontOfSize:11.0];
- lblType.tag = 2;
- UILabel *lblDate =[[UILabel alloc]initWithFrame:CGRectMake(200, 0, 60, 44)];
- lblDate.backgroundColor = [UIColor clearColor];
- lblDate.textColor = [UIColor whiteColor];
- lblDate.font = [UIFont systemFontOfSize:11.0];
- lblDate.tag = 3;
- UILabel *lblTime =[[UILabel alloc]initWithFrame:CGRectMake(265, 0, 50, 44)];
- lblTime.backgroundColor = [UIColor clearColor];
- lblTime.textColor = [UIColor whiteColor];
- lblTime.font = [UIFont systemFontOfSize:11.0];
- lblTime.tag = 4;
- [tableView beginUpdates];
- [tableView endUpdates];
- [cell.contentView addSubview:lblTitle];
- [cell.contentView addSubview:lblType];
- [cell.contentView addSubview:lblDate];
- [cell.contentView addSubview:lblTime];
- }
- NSString *text = [NSString stringWithFormat:@"%@,%@,%@",[[itemsData objectAtIndex:indexPath.row] objectForKey:@"address"],[[itemsData objectAtIndex:indexPath.row] objectForKey:@"title"],[[itemsData objectAtIndex:indexPath.row] objectForKey:@"zipcode"]];
- CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);
- CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeCharacterWrap];
- if (!lblTitle)
- lblTitle = (UILabel*)[cell viewWithTag:1];
- [lblTitle setText:text];
- [lblTitle setFrame:CGRectMake(CELL_CONTENT_MARGIN, CELL_CONTENT_MARGIN, CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), MAX(size.height, 44.0f))];
- UILabel *lblType = (UILabel *) [cell.contentView viewWithTag:2];
- lblType.text =[[itemsData objectAtIndex:indexPath.row] objectForKey:@"type"];
- UILabel *lblDate = (UILabel *) [cell.contentView viewWithTag:3];
- lblDate.text =[[itemsData objectAtIndex:indexPath.row] objectForKey:@"date"];
- UILabel *lblTime = (UILabel *) [cell.contentView viewWithTag:4];
- lblTime.text =[[itemsData objectAtIndex:indexPath.row] objectForKey:@"time"];
- return cell;
- }