2013-05-03 3 views
0

UIScrollView에서 UILabel을 사용하고 있지만 뷰가로드 될 때 텍스트가 표시되지 않습니다. 그런 다음 스크롤을 시작하면 텍스트가 나타납니다.UIScrollView가 스크롤 할 때 점프

내가 뭘 잘못하고 있니? 감사합니다.

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    [scrollView addSubview:mainLabel]; 
    [scrollView setAutoresizesSubviews:true]; 

    NSString *text = [textList objectAtIndex:(currentTextId)]; 

    CGFloat width = [mainLabel frame].size.width; 
    CGSize textSize = [text sizeWithFont: [mainLabel font] 
         constrainedToSize:CGSizeMake(width, CGFLOAT_MAX) 
          lineBreakMode:NSLineBreakByWordWrapping]; 

    CGRect labelFrame = CGRectMake (0, 0, width, textSize.height); 
    [mainLabel setFrame:labelFrame]; 
    [mainLabel setText:text]; 
} 
+1

당신이 엑스 코드 4.6.x에서 만든 펜촉을 사용하고 있습니까의 contentSize을 설정해야한다고 생각? 그렇다면 autolayout을 사용 중일 수 있습니다. – matt

+0

예, 저는 그것이 자동 레이아웃에있었습니다. 이제는 비활성화했습니다. scrollView contentSize 및 frame을 설정하고 더 이상 스크롤하지 않습니다. 내 코드에서 무엇이 잘못되었는지 찾고있다. – Julien

+1

스크롤하지 않으면 contextSize를 잘못 설정했기 때문입니다. 스크롤 크기보다 커야합니다. 그렇지 않으면 스크롤 할 항목이 없습니다. – matt

답변

0

난 당신이 또한 frame하고있는 ScrollView

0

당신은 명시 적으로 레이블이 얼마나 큰지 알 수 있도록 스크롤 뷰 contentSize을 설정해야합니다.

관련 문제