1

水平 uiscrollview を実装しようとしています。ユーザーが次のビューにスワイプできるようにしたいのですが、ユーザーが現在のページを知っているかどうかは心配していません (ビューは 2 つしかありません)。彼らはこれをページコントロールと呼んでいると思います。

したがって、私のIBにはデフォルトのビューがあり、UIScrollViewをそれに追加し、その参照アウトレット(scrollViewと呼ばれます)をリンクしました。以前はデフォルト ビューにあったすべての UILabels と画像を scrollView に配置しました。

次に、別の空のビューを IB にドラッグして作成し、リンクして newView と呼びました。これは別個のオブジェクトであり、既定のビューには含まれません。

次に、View Controller viewDidLoad で次のコードを使用します。

  [self->scrollView setScrollEnabled:YES];
[self->scrollView setDelegate:self];
self->scrollView.backgroundColor = [UIColor clearColor];
[self->scrollView setShowsHorizontalScrollIndicator:NO];
[self->scrollView setIndicatorStyle:UIScrollViewIndicatorStyleDefault]; scrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
scrollView.contentMode = UIViewContentModeScaleToFill;
[self->scrollView setContentSize:CGSizeMake(1300.0,0)];
[self.view addSubview:scrollView];

それは動作しません。誰かが私が間違っていることを説明できますか?

ありがとう!

ここに画像の説明を入力

4

2 に答える 2

2

コードから次の行を削除するだけです。

[self->scrollView setShowsHorizontalScrollIndicator:NO];

また、必要ありません:

[self->scrollView setIndicatorStyle:UIScrollViewIndicatorStyleDefault]; scrollView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

そして追加

[self->scrollView setContentSize:CGSizeMake(1300.0,200.0)];

また、xibをデフォルト設定に設定します

これを試してみてください。

于 2012-12-26T05:26:47.383 に答える
0

@V-Xtremeによって提供された答えは正しいですが、1つ欠けているのは、POによって問題で言及されているページングです:)

したがって、ページングを有効にするには、次の 2 つの方法があります。

  1. コーディングから: 1行のコードを入れるだけ[self->scrollView setPagingEnabled:YES];
  2. またはxibで:Paging Enabledオプションをクリックするだけです。チェックされていることを確認してください。

ここに画像の説明を入力

于 2012-12-26T06:19:52.387 に答える