guodegangGDG 2013-04-24 05:51 采纳率: 0%
浏览 3447

UIButton传递@selector

代码:

- (void)showWithStatus:(NSString *)status barColor:(UIColor*)barColor textColor:(UIColor*)textColor click:(SEL)click{
    if(!self.superview)
        [self.overlayWindow addSubview:self];
    [self.overlayWindow setHidden:NO];
    [self.topBar setHidden:NO];
    self.topBar.backgroundColor = barColor;
    NSString *labelText = status;
    CGRect labelRect = CGRectZero;
    CGFloat stringWidth = 0;
    CGFloat stringHeight = 0;
    if(labelText) {
        CGSize stringSize = [labelText sizeWithFont:self.stringLabel.font constrainedToSize:CGSizeMake(self.topBar.frame.size.width, self.topBar.frame.size.height)];
        stringWidth = stringSize.width;
        stringHeight = stringSize.height;

        labelRect = CGRectMake((self.topBar.frame.size.width / 2) - (stringWidth / 2), 0, stringWidth, stringHeight);
    }
    self.stringLabel.frame = labelRect;
    self.stringLabel.alpha = 0.0;
    self.stringLabel.hidden = NO;
    self.stringLabel.text = labelText;
    self.stringLabel.textColor = textColor;

    clickBn=[[UIButton alloc]initWithFrame:self.stringLabel.frame];
    clickBn.backgroundColor=[UIColor blueColor];
    [clickBn addTarget:self action:click forControlEvents:UIControlEventTouchUpInside];
    if(!clickBn.superview)
        [self.topBar addSubview:clickBn];
    [UIView animateWithDuration:0.4 animations:^{
        self.stringLabel.alpha = 1.0;
    }];
//    [self setNeedsDisplay];
}

调用方法:

 - (IBAction)successButtonPressed:(id)sender {
[KGStatusBar showSuccessWithStatus:@"Successfully synced" click:@selector(clickBn)];
 }
 - (void)clickBn {
NSLog(@"sss");
 [KGStatusBar dismiss];
}

运行之后NSLog(@"sss") 不显示。我想要传递一个方法到自定义视图的UIButton,但是点击之后无任何响应。

  • 写回答

1条回答 默认 最新

  • ReyZhang 移动开发领域新星创作者 2013-04-27 01:31
    关注

    像你的这种设计不是太好.
    使用代理协议来实现比较好

    评论

报告相同问题?

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题