2014-04-05 103 views
0

我有一個UIScrollView,我在其中動態地添加UIImageViews。 在故事板識別UIScrollView中的UIButton Tap

enter image description here

運行程序

enter image description here

的代碼添加圖像後,在我的自定義類。類沒有分配到任何觀點:

- (id)initWithModel:(UIScrollView *)scroller page:(NSInteger)page image:(UIImage*)image{ 
    self = [super init]; 
    if (self) { 
     _scrollView = scroller; 
     _imageScrollIndex = page; 
     _image = image; 
     _frame = _scrollView.bounds; 
     _frame.origin.x = _frame.size.width * _imageScrollIndex; 
     _frame.origin.y = 0.0f; 
     _frame = CGRectInset(_frame, 10.0f, 0.0f); 
     _imageView = [[UIImageView alloc] initWithImage:_image]; 
     _imageView.contentMode = UIViewContentModeScaleAspectFit; 
     _imageView.frame = _frame; 
     //adding delete image button 
     CGRect frame = _imageView.frame; 
     frame.origin.x = frame.size.width/2; 
     frame.origin.y = -frame.size.height/2+45; 
     //_imageView.userInteractionEnabled = YES; 
     UIButton *deleteImgButton = [[UIButton alloc] initWithFrame:frame]; 
     deleteImgButton.userInteractionEnabled = YES; 
     [deleteImgButton addTarget:self action:@selector(clickedDeleteButton:)forControlEvents:UIControlEventTouchUpInside]; 
     [deleteImgButton setImage:[UIImage imageNamed:@"close.png"] forState:UIControlStateNormal]; 
     [_imageView addSubview:deleteImgButton]; 

     //// 
     [_scrollView addSubview:_imageView];   
    } 
    return self; 
} 

- (void)clickedDeleteButton:(UIButton*)button 
{ 
    printf("hi:\n"); 
} 

我想:

  1. 能夠識別滾動事件(因此我想我需要保持userinteractionenabled是爲scrollView
  2. 能夠識別在圖像的刪除按鈕自來水

任何想法如何?

回答

0
_scrl_ipad.contentSize = CGSizeMake(768,273 * temp); 
    _scrl_ipad.showsVerticalScrollIndicator=NO; 


     UIButton *btn_scrl=[UIButton buttonWithType:UIButtonTypeCustom]; 
     [btn_scrl setFrame:CGRectMake(0,0, 328, 243)]; 
     btn_scrl.tag=i-1; 
     [btn_scrl addTarget:self action:@selector(btn_scrl_tag:) forControlEvents:UIControlEventTouchUpInside]; 
     [_scrl_ipad addSubview:btn_scrl]; 


-(IBAction)btn_scrl_tag:(id)sender 
{ 
    UIButton *btn = (UIButton *)sender; 

    NSLog(@"%d",btn.tag); 
}