我一直在使用ABTableViewCell创建快速滚动单元格。除了无法弄清楚如何向自定义单元格添加UIButton之外,其他所有功能都非常有效。

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

有人对如何执行此操作有任何想法吗?

谢谢

最佳答案

我在uiTableViewCell子类中有一个“共享”按钮。

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

我使用黄色矩形来激活按钮的活动区域。
在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];
    }

处理触摸:
-(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];
}

关于iphone - ABTableViewCell-添加UIButton,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4860817/

10-08 23:29