Я сделал горизонтальный UIScrollView с включенным пейджингом. Это позволяет мне «пронести» определенное мнение. Проблема в том, что scrollview расположен слева. Я могу только прокручивать (читай: салфетки) мое определенное представление влево. Я также хочу, чтобы он провёл вправо, так что обе стороны. Я думаю, что это проблема с центрированием UIScrollView. Я много пробовал, но все это не сработало.UIScrollView пейджинг из центра влево и вправо
Вот мой код (vertScroll это горизонтальная Scrollview):
- (void)viewDidLoad {
[super viewDidLoad];
vertScroll.contentSize = CGSizeMake(3*375, 232);
vertScroll.frame = CGRectMake(0, 0, 375, 232);
vertScroll.pagingEnabled = YES;
vertScroll.scrollEnabled = YES;
vertScroll.showsHorizontalScrollIndicator = YES;
vertScroll.contentOffset = CGPointMake(375, 0);
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
[[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:255.0 green:125.0 blue:71.0 alpha:1.0]];
self.navigationController.navigationBar.topItem.title = @"blabla";
[self.navigationController.navigationBar setTitleTextAttributes:
@{NSForegroundColorAttributeName:[UIColor whiteColor],
NSFontAttributeName:[UIFont fontWithName:@"StoneSansBold" size:21]}];
self.scrollView.showsVerticalScrollIndicator=YES;
self.scrollView.scrollEnabled=YES;
self.scrollView.userInteractionEnabled=YES;
self.scrollView.contentSize = CGSizeMake(320, 800);
UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
// add effect to an effect view
self.effectView = [[UIVisualEffectView alloc]initWithEffect:blur];
self.effectView.alpha = 0.9;
self.effectView.frame = CGRectMake(self.coverImage.frame.origin.x, self.coverImage.frame.origin.y+108, self.coverImage.frame.size.width, 34);
// add the effect view to the image view
[self.coverImage addSubview:self.effectView];
[self.cellView addSubview:self.seismo];
self.seismo = [[UIImageView alloc]initWithFrame:CGRectMake(2, self.coverImage.frame.size.height/2, 40, 40)];
self.seismo.animationImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"tmp-0.gif"],
[UIImage imageNamed:@"tmp-1.gif"],
[UIImage imageNamed:@"tmp-2.gif"],
[UIImage imageNamed:@"tmp-3.gif"],[UIImage imageNamed:@"tmp-4.gif"], nil];
self.seismo.animationDuration = 1.0f;
self.seismo.animationRepeatCount = 0;
[self.seismo startAnimating];
[self.cellView addSubview:self.seismo];
self.seismo.alpha = 0.0;
[self.cellView setFrame:CGRectMake(375, 0, 375, 232)];
// Do any additional setup after loading the view, typically from a nib.
}
ли что , но теперь «определенная точка зрения» находится на левой стороне (так, страница 1) scrollView. Как я могу сосредоточить его (или разместить на странице 2) в scrollView? – user2578311
Просто убедитесь, что кадр установлен правильно, поэтому для страницы 1 будет отображаться: 'CGRectMake (0,0, ширина, высота)', для страницы 2 (в центре) это будет: 'CGRectMake (ширина, 0, width, height) 'и для страницы 3 это будет' CGRectMake (ширина * 2,0, ширина, высота) ' –
Сделал это, но он все еще остается слева в scrollView, поэтому на странице 1. – user2578311