我試圖以編程方式創建UIScrollView
。我有一個scrollView
該ViewController。這是我如何實例化它在loadView
:ScrollView中的視圖
CGRect fullScreenRect = [[UIScreen mainScreen] applicationFrame];
self.scrollView = [[UIScrollView alloc] initWithFrame:fullScreenRect];
self.scrollView.contentSize = CGSizeMake(self.view.frame.size.width, self.view.frame.size.height);
我那麼一些項目到它,然後它在loadView
添加到view
如下:
[self.scrollView addSubview:self.searchBar];
[self.scrollView addSubview:button];
[self.view addSubview:self.scrollView];
到目前爲止,一切都應該罰款。但是,在其他功能中,我將添加ImageViews
,然後我需要設置滾動視圖的內容大小。我這樣做,只是用[self.scrollView addToSubView:image]
,當我想編輯滾動視圖的內容大小,我做它的方式如下:
// Calculate scroll view size
float sizeOfContent = 0;
for (int i = 0; i < [self.scrollView.subviews count]; i++) {
UIImageView *view =[self.scrollView.subviews objectAtIndex:i];
sizeOfContent += view.frame.size.height;
[view release];
}
// Set content size for scroll view
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width, sizeOfContent);
我一直在main.m文件類得到一個EXC_BAD_ACCESS錯誤。
我懷疑問題是保留實際的scrollView,因爲我認爲scrollView
不保留相同的對象是視圖的子視圖。
有什麼建議嗎?提前致謝!
所以我應該創建一個本地滾動視圖,然後將其設置爲全局滾動視圖並釋放本地滾動視圖? – darksky
@Nayefc是的,這也很好,實際上這種方式是首選。 –