我有一个自定义表格单元格,我想在左侧添加一个自定义 UIButton,在单元格内垂直居中。我尝试使用下面显示的代码来做到这一点,该代码位于我的自定义表格单元格实现中。
我试图通过获取 self.frame 的高度并调整按钮的大小以使其距离单元格的顶部和底部 5px 来实现垂直居中对齐。当我运行它时,我看到按钮出现在距离顶部 5 像素的位置,但距离底部远得多(20 像素左右)。
实现垂直对齐的正确方法是什么?
这是我在自定义表格单元实现中的代码:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self)
{
[self setSelectionStyle:UITableViewCellSelectionStyleNone];
// Create the audio button on the left side:
self.audioButton = [UIButton buttonWithType:UIButtonTypeCustom];
self.audioButton.frame = CGRectMake(5, 5, self.frame.size.height - 10, self.frame.size.height - 10);
[self.audioButton setImage:[UIImage imageNamed:@"ec-icon-speaker.png"] forState:UIControlStateNormal];
[self.audioButton addTarget:self
action:@selector(playWordAudio)
forControlEvents:UIControlEventTouchUpInside];
[self.contentView addSubview:self.audioButton];
感谢您的任何建议,
埃里克