在新视图控制器中未调用按钮操作

时间:2011-11-30 04:19:43

标签: iphone objective-c ios

我有一个表视图作为我的RootViewController,并使用此代码按下按钮上的另一个。

[[self navigationController] pushViewController:aboutVC animated:YES];

我的问题是,按下按钮时不会调用按钮的动作。我已经检查了几乎所有我能想到的东西,我很确定我的按钮有一个超越用户交互的视图。除了在我的新视图控制器中编码的按钮及其动作之外,我别无其他。我正在使用自定义单元格,但它还没有任何内容。

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

    CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[CustomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }

    tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
    cell.userInteractionEnabled = NO;

    //ADD BUTTONS
    UIButton *redButton = [[UIButton alloc] init];
    redButton.backgroundColor = [UIColor colorWithRed:0.0/255 green:0.0/255 blue:0.0/255 alpha:1.00];
    [redButton addTarget:self action:@selector(redButton:) forControlEvents:UIControlEventTouchUpInside];
    redButton.frame = CGRectMake(9, 44, 40, 39);

    [cell addSubview:redButton];

    [redButton release];
    return cell;
}


- (void)redButton:(id)sender
{
    //Button action will go here
}

关于我可能做错什么的任何想法?

1 个答案:

答案 0 :(得分:2)

cell.userInteractionEnabled = NO;
[cell addSubview:redButton];
  

将上面的行替换为下面两行代码

cell.userInteractionEnabled = YES;
[cell.contentView addSubview:redButton];