2013-04-28 7 views
0

이제는 UIScrollView를 구현하고 있습니다. 나는 결코 볼 수없는 문제에 직면하고 있습니다. 스크롤 뷰에있는 3 개의 UIButton 중 2 개가 내 클릭에 응답하지 않습니다. 하나는 그렇지 않습니다. UIScrollView & UIButtons, 정말 이상한 동작

나는 많은 연구를했다하고있는 viewDidLoad 방법에서 많은 것들 (지연, 설정 사용자 상호 작용을 차단하려고 ...)

을 시도 :

BoutonPig1 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[BoutonPig1 setFrame:CGRectMake(0, 45, 145, 90)]; 
[BoutonPig1 addTarget:self action:@selector(BonusShop) forControlEvents:UIControlEventTouchUpInside]; 
UIImage * boutonPig1OnImage = [UIImage imageNamed:@"Pig2ShopBloquee.png"]; 
[BoutonPig1 setImage:boutonPig1OnImage forState:UIControlStateNormal]; 

내 설정 scrol 보기 메서드를 3 요소 :

-(void)setScrollView:(UIScrollView *)scroller1 
{ 
for (int i = 0; i < 3; i++) 
{ 
    CGRect frame; 
    frame.origin.x = 0; 
    frame.origin.y = scroller.frame.size.height * i; 
    frame.size = scroller.frame.size; 

    UIImageView *newPageView = [[UIImageView alloc] init]; 
    newPageView.contentMode = UIViewContentModeScaleAspectFit; 
    newPageView.frame = frame; 

    if (i == 0) 
    { 
     [newPageView addSubview:BoutonPig1]; 
    } 
    if (i == 1) 
    { 
     [newPageView addSubview:BoutonPig2]; 
    } 
    if (i == 2) 
    { 
     [newPageView addSubview:BoutonPig3]; 
    } 
    [newPageView setUserInteractionEnabled:YES]; 
    [scroller addSubview:newPageView]; 
} 
scroller.contentSize = CGSizeMake(scroller.frame.size.width * 3, scroller.frame.size.height); 
} 

내가 subview에 넣어 세 요소는 첫 번째 코드를 추출에서 3 UIButtons 있습니다. 같은 일을하십시오. 지금은 다른 유일한 위치는 그들의 위치입니다.

[BoutonPig2 setFrame:CGRectMake(0, 164, 145, 90)]; 
    [BoutonPig3 setFrame:CGRectMake(0, 285, 145, 90)]; 

도움 주셔서 감사합니다.

+0

UIScrollView의 프레임입니까? 이드는 스크롤 뷰의 콘텐츠 크기가 충분히 크지 않다고 생각합니다. – Dev2rights

+0

scroller = [[UIScrollView alloc] initWithFrame : CGRectMake (59.0, 54.0, 145, 180)]; – user2057209

+0

그럼 그 대답은 180 + 54 = 234이며, 이는 버튼 3에서 285보다 큰 것입니다. 스크롤 뷰의 프레임을 디버그합니다. 이미지를 설정하지 않은 이유는 이미지보기가 필요한 이유입니다. – Dev2rights

답변

0

CGRectMake (0, 164, 145, 90) CGRectMake (0, 285, 145, 90) 좌표를 사용하여 newPageView에 BoutonPig2 BoutonPig3 버튼을 추가했기 때문에 문제가 있다고 생각하지만 CGRectMake (0,45,145,90) for all or CGRectMake (0, 0, 145, 90) ... scool에 버튼을 추가하지 않고 newPageView에 새 값을 넣었으므로 0,012를 가진 새로운 좌표가 있습니다.