3
私には、UIScrollViewを含むランドスケープモードで開始するビューコントローラがあります。サブビューを作成してUIScrollViewに追加しようとしましたが、ビューのフレームサイズはすべてポートレートで表示されていました。UIScrollViewにランドスケープモードでサブビューを追加する
ここに私のコードです:
- (void)viewDidLoad
{
[super viewDidLoad];
[self.scrollView setAutoresizingMask:(UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight)];
NSArray *colors = [NSArray arrayWithObjects:[UIColor redColor], [UIColor greenColor], [UIColor blueColor], nil];
for (int i = 0; i < colors.count; i++)
{
CGRect frame = self.scrollView.frame;
frame.origin.x = frame.size.width * i;
frame.origin.y = 0;
UIView *subview = [[UIView alloc] initWithFrame:frame];
subview.backgroundColor = [colors objectAtIndex:i];
[self.scrollView addSubview:subview];
}
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * colors.count,
self.scrollView.frame.size.height);
self.scrollView.pagingEnabled = YES;
self.scrollView.showsHorizontalScrollIndicator = NO;
self.scrollView.showsVerticalScrollIndicator = NO;
self.scrollView.scrollsToTop = NO;
}
出力:
この回答の可能な複製:[目的地Cのdidloadメソッドの開始時のLandscapeOrientation](http://stackoverflow.com/questions/8775911/landscapeorientation-on-start-of-didload-method-in-objective-c示唆されるように) – Pfitz
回転にサブビューを整列させることにより問題を修正[ページングのクリーン自転遷移UIScrollViewの] [1] [1]:http://stackoverflow.com/questions/3322554/clean-オートローテーション - ページング - ウイスコンシブビュー – Eric
デバイスを回転させるときにスクロールビューの寸法を変更する必要があります – Dhara