2013-07-12 3 views
2

Приветствую всех. Я перетащил UIScrollView в свою раскадровку, затем добавил UIView поверх этого UIScrollView. Этот UIView динамически загружает другое подвью в зависимости от того, что сервер выбрасывает этому приложению.UIScrollView не прокручивает содержимое другой подвью

Проблема UIScrollView не прокрутка содержимого, хотя я сделал загруженный UIView больше, чем UIScrollView. Я не звоню [myScroller addSubView:myUiView]. Правильно ли я это делаю? Заранее спасибо!

+0

Вы задали размер содержимого прокрутки? – Wain

+0

@Wain я просто установил его на viewDidLoad: 'myScroll.contentSize = CGSizeMake (self.view.frame.size.width * myUiView.frame.size.width, 1500);' –

ответ

0

За каждый раз, когда вы меняете содержимое попробуйте позвонить

//removeFromSuperview the UIView was set as content view 
self.myScroller.contentSize = self.myUiView.frame.size; 
[myScroller addSubView:myUiView]; 

Не забудьте связать как взгляды на Interface Builder

PS: В этом apporach в подвид должен не находиться внутри scrollView на IB

+0

Спасибо большое, что сработало! проблема заключалась в том, что представление содержимого находилось внутри прокрутки на IB ... Спасибо! –

0

Вы должны установить размер содержимого прокрутки.

+1

Я сделал, но все еще не прокручиваю. –

0

Добавьте это в свой контроллер.

- (void) viewDidLayoutSubviews 
{ 
    [super viewDidLayoutSubviews]; 

    myScroller.contentSize = CGSizeMake(CGRectGetMaxX(myUiView.frame), CGRectGetMaxY(myUiView.frame)); 
} 
+0

Я добавил его, но ничего не происходит. Я только что подключил UIScrollView и UIView к представлению, я добавил никакого кода вообще, чтобы справиться с скроллером, может быть, проблема? –

+0

есть. если myScroller и myUiView не были подключены к контроллеру представления, это не сработает. Они должны быть подключены для работы. –

+0

также убедитесь, что прокрутка включена в конструкторе интерфейса или добавлена ​​следующая функция для просмотраDidLoad. myScroller.scrollEnabled = YES; –