如何将UITableViewCell内容与NSString进行比较?

时间:2015-04-01 18:20:54

标签: objective-c uitableview nsstring ios8.1

我有一个Core Data行,其中包含有关UITableView中所选行的信息。 UITableViewCell值是从一个字符串数组中获得的,这是第一个比较值; NSString(存储在Core Data行中,现在显示在UITextField中)是第二个比较值。

我想将cell.textLabel与textField进行比较,以便我可以设置单元格的附件复选标记。

这是我的代码;比较不起作用(我已经证实第一次比较应该是真的):

        if([cell.textLabel isEqual: soServices.text])  {
            cell.accessoryType = UITableViewCellAccessoryCheckmark;
            break;
        }
        else
            cell.accessoryType = UITableViewCellAccessoryNone;
    }

我假设我的比较不正确,但是在SO或Google上没有找到任何东西来指示进行比较的正确方法。那么,我如何将cell.textLabel与NSString进行比较?

2 个答案:

答案 0 :(得分:3)

试试这个:

if([cell.textLabel.text isEqualToString: soServices.text])  {
            cell.accessoryType = UITableViewCellAccessoryCheckmark;
            break;
        }
        else
            cell.accessoryType = UITableViewCellAccessoryNone;
    }

答案 1 :(得分:3)

if([cell.textLabel isEqual: soServices.text])  {
            cell.accessoryType = UITableViewCellAccessoryCheckmark;
            break;
        }
        else
            cell.accessoryType = UITableViewCellAccessoryNone;
    }

您当前正在将标签与字符串对象进行比较,使用titleLabel的{​​{1}}属性可以让您使用text方法,让您成功比较两者。< / p>