5

プログラムでUISCrollViewを作成しましたが、スクロールバー/インジケーターが表示されません。

UIScrollView * contentScrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(760, 70, 205, 320)];
contentScrollView.delegate = self;
contentScrollView.scrollEnabled = YES;
contentScrollView.pagingEnabled = YES;
contentScrollView.userInteractionEnabled=YES;
contentScrollView.scrollsToTop = YES;
contentScrollView.showsVerticalScrollIndicator = NO;
contentScrollView.showsVerticalScrollIndicator = YES;
contentScrollView.alwaysBounceVertical = NO;
contentScrollView.alwaysBounceHorizontal = NO;
contentScrollView.bounces = NO;
contentScrollView.hidden = NO;
[contentScrollView flashScrollIndicators];
UILabel *titleLable = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 205, 40)];
UILabel *subtitleLable = [[UILabel alloc] initWithFrame:CGRectMake(10, 60, 205, 50)];
UITextView * mainContent = [[UITextView alloc]initWithFrame:CGRectMake(10, 110, 205, 230)];

[titleLable setText:@"...."];
[subtitleLable setText:@"SUbtitle"];
[mainContent setText:@"Descritpon"];
[contentScrollView addSubview:mainContent];
[contentScrollView addSubview:titleLable];
[contentScrollView addSubview:subtitleLable];

このコードは、別の大きなスクロールビューに再びアタッチされているビューに追加します。これが当てはまる理由を誰かが知っていますか?また、簡単にするために、各ラベルに含まれるテキストを単語に減らしましたが、プログラムでは、テキストはスクロールするのに十分です

ありがとう..

4

2 に答える 2

2

スクロールビューをスクロールするには、スクロールビューのコンテンツサイズが境界よりも大きくなければなりません。この行を追加して、次のことを確認してください。

contentScrollView.contentSize=CGSizeMake(320, 250);

また、最初に値をに設定してからに値を設定したので、にを設定しcontentScrollView.bouncesYES行を削除します。contentScrollView.showsVerticalScrollIndicator=YESNOYES

これでうまくいくはずです。

于 2012-05-29T15:30:52.693 に答える
0
contentScrollView.showsHorizontalScrollIndicator = YES;
contentScrollView.showsVerticalScrollIndicator = YES;
于 2013-04-05T07:14:38.410 に答える