UITutton在UITableViewCell事件中不起作用

时间:2011-01-08 18:28:28

标签: iphone uitableview uibutton

我在整个网络上都看到了这个问题,所列出的解决方案都不适合我!

我已将UIButton添加到IB中的UITableViewCell。我已经为UITableViewCell分配了一个自定义UITableViewCell类。我的自定义UITableViewCell类有一个IBAction,它连接到Touch Up Inside事件(我已尝试过其他事件,它们都不起作用)但IBAction函数永远不会被调用!

UITableViewCell中没有其他内容,我已将UIButton直接添加到内容视图中。一切都启用了用户交互!这很简单,我没有任何复杂的事情发生!

什么是关于停止按钮工作的UITableViewCell?

编辑:通过请求我初始化我的UITableViewCells自定义类的代码叫做DownloadCell

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

    DownloadCell *cell = (DownloadCell *)[aTableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) 
    {
        UIViewController * cellController = [[UIViewController alloc] initWithNibName:@"DownloadCell" bundle:nil];
        cell = (DownloadCell *)cellController.view;
        [cellController release];
    }

    SoundLibrarianIPhoneAppDelegate * del = (SoundLibrarianIPhoneAppDelegate *)[UIApplication sharedApplication].delegate;

    DownloadQueue * dq = del.downloadQueue;

    DownloadJob * job = [dq getDownloadJob: indexPath.row];
    [job setDelegate:self];

    SoundInfo * info = [job sound];

    NSArray * seperated = [info.fileName componentsSeparatedByString: @"."];
    NSString * displayName = [seperated objectAtIndex:0];
    displayName = [displayName stringByReplacingOccurrencesOfString:@"_" withString:@" "];
    displayName = [displayName capitalizedString];

    [cell.titleLabel setText: displayName];
    cell.progressBar.progress = job.percentCompleted;
    [cell.progressLabel setText: [job getProgessText]];

    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    cell.userInteractionEnabled = YES;

    [cell setDelegate:self];

    return cell;
}

2 个答案:

答案 0 :(得分:1)

似乎问题与我经常更新表格单元格有关,所以这会中断与单元格本身的任何交互

答案 1 :(得分:0)

让U将此代码放在表视图中。? tableView.delegate =自我; tableView.dataSource =自我;

谢谢, 巴拉斯