2011-10-25 110 views
0

我爲我的一個視圖控制器設置了一個ScrollView作爲根視圖。當我從「界面」構建器中拖動滾動視圖時,滾動出現初始大小爲220x120。ScrollView內容大小不起作用

在該視圖控制器viewDidLoad方法中,我有這個代碼。

UIImage *iphone = [UIImage imageNamed:@"iphone4s.jpg"]; 
imageview = [[UIImageView alloc] initWithImage:iphone]; 
[self.view addSubview:imageview]; 


[(UIScrollView*)self.view setContentSize:[iphone size]]; 

iphone圖片大小爲600x800。

但是當視圖加載到屏幕上時,滾動視圖的大小仍然是220x120。我應該做其他任何事情來擴展scrollView。請幫忙。

回答

0

屬性contentSize與UIScrollView的大小是不一樣的。通常你會爲了有更大的內容大小以能夠滾動:

+-------------------+ 
|x------------+  | 
||   |  | 
||   |  | 
|+------------+  | 
|     | 
|     | 
+-------------------+ 

在這個小品的內部矩形是滾動視圖大小(你的220x120),你在屏幕上看到,雖然外矩形是對象的實際大小(在您的情況下爲600x800)。操作contentOffset點(圖中的x),您可以更改對象的哪個部分可見。

如果您不需要圖像可滾動,則根本不需要UIScrollView。嘗試使用UIImageView,更改它的frame並檢查其contentMode屬性的不同值。

此外,不要忘記,視圖可以自動調整其大小。

1

試試這個 `

UIImage *iphone = [UIImage imageNamed:@"iphone4s.jpg"]; 
imageview = [[UIImageView alloc] initWithImage:iphone]; 
[self.view addSubview:imageview]; 
self.view.frame = CGRectMake(0, 20, 320, 460); 

[(UIScrollView*)self.view setContentSize:[iphone size]]; 

` 如果這會爲你工作 - 只是伸展它的IB。

0

試試這個

[(UIScrollView*)self.view setContentSize:[imageview size]];

+0

有圖像視圖大小沒有財產 – Anand