在tableview单元格iphone中添加一个按钮

时间:2011-11-18 09:30:38

标签: iphone objective-c uitableview uibutton

我有这个问题...... 我想把我的按钮放在桌子上 查看..我这样做..

UIButton *dowMapBt = [UIButton buttonWithType:UIButtonTypeCustom];
        [dowMapBt setFrame:CGRectMake(0, 0, cell.frame.size.width, 70)];
        [dowMapBt setTitle:@"Download Map" forState:UIControlStateNormal];

        dowMapBt.titleLabel.font = [UIFont fontWithName:@"HelveticaNeue-Bold" size:20];

        [dowMapBt setBackgroundImage:[[UIImage imageNamed:@"00670_btn_green_medium.png"] stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0] forState:UIControlStateNormal];
        [dowMapBt addTarget:self action:@selector(ButtonPressed) forControlEvents:UIControlEventTouchUpInside];
        [cell.contentView addSubview:dowMapBt];

但是我有一个问题..按钮没有出现 细胞,但只有一半...而不是细胞的整个宽度......

2 个答案:

答案 0 :(得分:1)

像这样设置框架

  [dowMapBt setFrame:CGRectMake(0, 0, cell.frame.size.width, cell.frame.size.height)];

并检查您正在设置的图像的大小

答案 1 :(得分:0)

创建单元格后,只需添加按钮作为单元格的子视图。首先检查单元格是否为零。

if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    [dowMapBt setFrame:CGRectMake(0, 0, cell.frame.size.width, 30)];
    [dowMapBt addTarget:self action:@selector(ButtonPressed) forControlEvents:UIControlEventTouchUpInside];
    [cell addSubview:dowMapBt];
}

这个返回单元格