2010-05-14 53 views
-4

有人可以爲給定的場景提供代碼示例嗎?我們可以在UIScrollView中放置UIButton,反之亦然iPhone

+4

您可以將任何uiview子類實例放入另一個,但爲什麼要將scrollview放入按鈕中? – Vladimir 2010-05-14 10:46:53

+0

我喜歡這樣做,只是爲了找出如何在iPhone中做到這一點? – 2010-05-14 10:53:49

+2

如果你想知道如何去做,那麼問問題就會打敗你的對象。 – 2010-05-14 11:07:14

回答

1
UIScrollView *scrollview = [[[UIScrollView alloc] initWithFrame:CGRectMake(0.0F, 0.0F, 320.0F, 480.0F)] autorelease]; 
[self.view addSubview:scrollView]; 

UIButton *button = [UIButton buttonWithType: UIButtonTypeRoundedRect]; 
[button setTitle:@"Title" forState:UIControlStateNormal]; 
[button setFrame:CGrectMake(0.0F, 0.0F, 50.0F, 50.0F)]; 
[scrollView addSubview:button]; 

如果你有一個子視圖到一個UIButton以相反的順序添加,那麼你只想把它:

UIButton *button = [UIButton buttonWithType: UIButtonTypeRoundedRect]; 
[button setTitle:@"Title" forState:UIControlStateNormal]; 
[button setFrame:CGrectMake(0.0F, 0.0F, 50.0F, 50.0F)]; 
[[self.view addSubview:button]; 
UIScrollView *scrollview = [[[UIScrollView alloc] initWithFrame:CGRectMake(0.0F, 0.0F, 320.0F, 480.0F)] autorelease]; 
[button addSubview:scrollView]; 

scrollview將按鈕擋住接觸,除非你設置userInteractionEnabled和在滾動視圖上的exclusiveTouch屬性爲NO。但是,這將打破在我認爲按鈕內部有滾動視圖的目的。

+0

好!這是在UIScrollView中設置UIButton的代碼。如何做到反之亦然?代碼是什麼? – 2010-05-14 11:04:50

+0

添加了反之亦然部分。 – texmex5 2010-05-14 11:27:14

0

如果你的按鈕不可點擊,那麼只需檢查你的視圖的內容大小(在IB的情況下self.view)。它應該大於或等於scrollView的大小。在我的情況我設置滾動視圖的內容大小原樣

self.scrollView.contentSize=CGSizeMake(320,580); 

,並添加視圖作爲子視圖滾動視圖

[self.scrollView addSubview:self.view]; 

並沒有設置的視圖大小。所以那是我的錯誤。在3.5英寸視網膜顯示的情況下,默認的高度爲480, ,在4英寸的視網膜的情況下爲568。

所以我設置我的觀點的內容大小原樣

self.view.frame=CGRectMake(0, 0, 320, 700); 

,並添加此視圖滾動視圖的子視圖解決了這個。

相關問題