0

我正在尝试获取一个添加按钮来将行添加到表中,然后可以对其进行编辑。我得到了第 10、17 和 30 行的预期标识符或“(”。这是代码:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
    UILabel *lblName = (UILabel *)[cell viewWithTag:100];
    [lblName setText:[intervalArray objectAtIndex:[indexPath row]]];
    return cell;
}

if (cell == nil) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
                                   reuseIdentifier:CellIdentifier];
    cell.accessoryType = UITableViewCellAccessoryNone;
}


if ([indexPath section]) == 0 {
    UITextField *workoutTextField = [[UITextField alloc] initWithFrame:CGRectMake(110, 10, 185, 30)];
    workoutTextField.adjustsFontSizeToFitWidth = YES;
    workoutTextField.textColor = [UIColor blackColor];
    if ([indexPath row] == 0) {
        workoutTextField.placeholder = @"...";
        workoutTextField.keyboardType = UIKeyboardTypeEmailAddress;
        workoutTextField.returnKeyType = UIReturnKeyNext;

 }}

// Configure the cell...

return cell;

我已经尝试了您的建议,他们消除了所有错误,但我仍然无法使用按钮将行添加到我的表中。任何有关如何向表中添加行的建议将不胜感激,这是我的第一个 iOS 应用程序,我对一般编程相当陌生。感谢所有的帮助!我正在使用 OS X 10.8.3

4

2 回答 2

3

我认为您在这里放错了括号:

if ([indexPath section]) == 0 {

你的意思是:

if ([indexPath section] == 0) {

这里的方括号包含一个方法调用消息发送indexPath;括号括起您正在进行的条件比较[indexPath section],即检查调用结果是否等于零。

编辑:您也可能过早地有一个闭合花括号 - 第}7 行关闭了您的整个方法实现-tableView:cellForRowAtIndexPath:。您可能希望将其一直移动到您的return cell;声明下方。

于 2013-04-10T18:42:22.020 回答
1

第 10 行和第 17 行的条件句和第return30 行的语句属于什么方法?它们似乎卡在您的实现文件中,这使编译器感到困惑。

简单地移动结束的大括号-tableView:cellForRowAtIndexPath:将修复错误,但由于您在第 7 行返回一个值(结束方法的执行),其余代码将不会做任何事情。

于 2013-04-10T18:45:31.763 回答