Я пытаюсь создать представление, похожее на это:вид прокрутки внутри другой вид прокрутки с разными направлениями прокрутки
То есть, у меня есть UIScrollView
внутри другого UIScrollView
. Прокрутка в светло-сером цвете - родительский: он занимает всю ширину экрана и предназначен только для вертикальной прокрутки. Вид прокрутки внутри этого, темно-серый, занимает только часть ширины его родителя и предназначен только для горизонтальной прокрутки.
Поведение, которое я пытаюсь достичь, заключается в следующем: я хотел бы иметь возможность прокручивать по вертикали все содержимое родительского прокрутки одновременно, включая содержимое во внутреннем представлении прокрутки. Но, с другой стороны, я хотел бы прокручивать по горизонтали только внутренний вид прокрутки.
Мне удалось избежать прокрутки по горизонтали в представлении родительского прокрутки, привязав его ширину содержимого к экрану, но я не могу избежать прокрутки по вертикали внутри прокрутки: я хочу, чтобы вид прокрутки внутри прокручивался по вертикали только при просмотре всего родительского прокрутки.
Как я могу управлять этим сценарием? Благодаря!
EDIT. Я пытался сделать это:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if (scrollView == self.childScrollView) {
[self.parentScrollView setContentOffset:CGPointMake(self.parentScrollView.contentOffset.x, self.childScrollView.contentOffset.y)];
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, 0)];
}
}
То, что я пытаюсь сделать с этим, при перетаскивании контроллера представления ребенка по вертикали, выделите ее родительский вид контроллер, который должен прокрутить контроллер представления ребенка, а также , То есть, перетаскивая контроллер дочернего представления по вертикали, я хочу, чтобы весь родительский вид прокрутки, включая дочерний, прокручивал по вертикали одно и то же смещение. Но при перетаскивании контроллера дочернего представления по горизонтали я просто хочу прокрутить сам контроллер дочернего представления и зафиксировать его родительский элемент. Я все еще не в состоянии добиться такого поведения, никакой помощи?
Ah чище, чем мое предложение – JSA986
Я пытаюсь это: 'CGSize sz = self.childScrollView.bounds.size; sz.height = self.parentScrollView.contentSize.height; sz.width = childWidth; self.horizontalScrollView.contentSize = sz; ', но он, похоже, не работает ... – AppsDev