0

UIScrollView.iを使用しているときに問題が発生しました。作成し、いくつかのプロパティを設定し、メインビューを使用してこのUIScrollViewを参照します。参照:

scrollWidth = 320.0;
scrollHeight = 410 * listRegisterPeople.count;
scrollScreenView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, scrollWidth,    scrollHeight)];
[scrollScreenView setScrollEnabled:YES];
[scrollScreenView setContentSize:CGSizeMake(scrollWidth, 410 * list.count)];
[scrollScreenView setShowsVerticalScrollIndicator:YES];
[scrollScreenView setShowsHorizontalScrollIndicator:YES];
[scrollScreenView setPagingEnabled:NO];
scrollScreenView.delegate = self;
[scrollScreenView setContentOffset:CGPointMake(0, 0)];
self.view = scrollScreenView;

しかし、scrollScreenViewをサブビュー[self.view addSubview:scrollScreenView]として追加したいと思います。しかし、この方法では、ビューをスクロールできません。理由がわかりません。。。

それを解決する方法は?

4

3 に答える 3

1

ScrollViewのフレームがコンテンツサイズ以上の場合、スクロールしません。あなたのスクロールビューの高さはスクロールビューのcontentSizeと同じです、私はそれが問題だと思います。フレームをself.viewと等しくし、コンテンツサイズを次のように設定します。次のようにしてください。

scrollWidth = 320.0;
scrollHeight = 410 * listRegisterPeople.count;
scrollScreenView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, 320,self.view.frame.size.height)];
[scrollScreenView setScrollEnabled:YES];
[scrollScreenView setContentSize:CGSizeMake(scrollWidth, scrollHeight)];
[scrollScreenView setShowsVerticalScrollIndicator:YES];
[scrollScreenView setShowsHorizontalScrollIndicator:YES];
[scrollScreenView setPagingEnabled:NO];
scrollScreenView.delegate = self;
[scrollScreenView setContentOffset:CGPointMake(0, 0)];
[self.view addSubview:scrollScreenView];
于 2012-10-03T12:57:02.857 に答える
0

私はあなたがラインを交換する必要があると思います

self.view = scrollScreenView;

ラインのために

[self.view addSubview:scrollScreenView]

于 2012-10-03T12:54:11.270 に答える
0

自動レイアウトは、ビューの読み込み後にいくつかの制約を設定するため、コンテンツサイズをviewDidAppearに配置するだけで、コードは書き換えられません。

これは私のために働いた。

-(void)viewDidAppear:(BOOL)animated{
  [self.scrollView setContentSize:CGSizeMake(320, 1000)];
}

英語が下手でごめんなさい。

于 2013-03-29T17:51:01.550 に答える