0

ページングを有効にして UIScrollView を使用しています。私のコードはPageControl exampleに基づいています。

UIScrollView 内のページは互いに近くにとどまります。ただし、ページ間にスペースを追加する必要があります (カメラ ロールで写真を閲覧する場合など)。ページ間に水平インデントを追加する方法はありますか?

4

2 に答える 2

0

scrollView のフレームを広くして、画面の左右にギャップ/2 ピクセル分拡張する必要があります。

CGFloat gap = 20.0; //20 pixels spacing between pages
CGRect frame = self.view.frame;
frame.size.width += gap;
frame.origin.x -= gap/2;
scrollView.frame = frame;

次に、コンテンツビューコントローラーを通常のように中央に配置して画面を埋めるように追加するため、ギャップ/2インチだけ適切にオフセットするようにしてくださいloadScrollViewWithPage:

編集: iOS 6 のみをターゲットにしている場合は、代わりに UIPageViewControllerTransitionStyleScroll で UIPageViewController を使用し、UIPageViewControllerOptionInterPageSpacingKey オプションを使用できます。

于 2013-01-06T12:42:28.583 に答える
0

PhoneContentController.mでメソッドloadScrollViewWithPage:(int)pageを見つけて、次の行を確認します。

frame.origin.x = frame.size.width * page;

scrollView 内のコンテンツ フレームの x 位置を、コンテンツの幅 * ページ数で設定しています。したがって、コンテンツ間にガターを追加したい場合は、次のようにすることができます。

int xOffset = 20;
frame.origin.x = (frame.size.width * page) + xOffset;
于 2013-01-06T12:34:52.640 に答える