ABTableViewCell - 添加UIButton

Tob*_*oby 2 iphone objective-c uibutton uitableview

我一直在使用ABTableViewCell来创建快速滚动单元格.一切都很好,除了我无法弄清楚如何将UIButton添加到我的自定义单元格.

使用ABTableViewCell时,您可以使用drawAtPoint或drawInRect自行绘制所有文本/图像.但是,UIButton不支持任何这些方法.你不能做addSubView因为使用ABTableViewCell的全部意义在于你只有一个视图.

任何人都知道如何做到这一点?

谢谢

sos*_*gio 5

我在ABTableViewCell sublcass中有一个"共享"按钮.

   static UIImage* imgShare=nil;
    + (void)initialize
    {
        if(self == [MyCustomCell class])
        {
            imgShare = [[UIImage imageNamed:@"share.png"] retain];      
        }
    } 
Run Code Online (Sandbox Code Playgroud)

我使用黄色矩形首次亮相按钮的活动区域.在drawRect回调中:

CGRect btnShareActiveAreaRect;
    - (void)drawContentView:(CGRect)r
    {
        [[UIColor yellowColor] set];
        btnShareActiveAreaRect = CGRectMake(10,10,65,45);
        CGContextFillRect(context, btnShareActiveAreaRect);
        CGRect shareRect = CGRectMake(15,20,25,19);
        [imgShare drawInRect:shareRect];
    }
Run Code Online (Sandbox Code Playgroud)

处理触摸:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *touch =[touches anyObject]; 
    CGPoint startPoint =[touch locationInView:self.contentView];
    if(CGRectContainsPoint(btnShareActiveAreaRect,startPoint))
    {
        [self shareButton_Click];
    }
    else
        [super touchesBegan:touches withEvent:event];
}
Run Code Online (Sandbox Code Playgroud)