meltonCG
meltonCG

Reputation: 119

Adding disclosure indicator to tableview cell

I believe I'm doing this correctly but it doesn't seem to be working? The text for the cell is written indicating the if statement is correct and is running, However the cell accessory is not changing.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *simpleTableIdentifier = @"SimpleTableCell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];

    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
    }

    if (indexPath.section==0) {
        if ([[tableContents objectAtIndex:indexPath.row]  isEqual: @"New Time"]) {
            cell.tintColor = [UIColor redColor];
            cell.textLabel.text = [tableContents objectAtIndex:indexPath.row];
            cell.selectionStyle = UITableViewCellSelectionStyleBlue;
            cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
        }
        else{
            cell.textLabel.text = [tableContents objectAtIndex:indexPath.row];
        }
    }
    else{
        cell.textLabel.text = [tableContents objectAtIndex:indexPath.row];

    }
    return cell;

}

Thanks for any help in advance!

Okay so tried slimming the code down to try and see whats going on, now this crashes when the view is loaded, totally confused as i have another project where this is working perfectly!

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"UserCells";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
    if (cell == nil)
    {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    }

    // Configure the cell...

    cell.textLabel.text = @"Hello";
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

    return cell;

}

Upvotes: 1

Views: 977

Answers (1)

Mayank Patel
Mayank Patel

Reputation: 3908

Setting the cell tint color in cellForRowAtIndexPath did work:

cell.tintColor = [UIColor redColor]; // whatever you want

Upvotes: 1

Related Questions