簡體   English   中英

UIScrollView作為另一個UIScrollView的子視圖

[英]UIScrollView as subview of another UIScrollView

是否可以有一個小的垂直滾動視圖作為另一個更大的垂直滾動視圖的子視圖?

我做了一個小原型。 當滾動視圖不是分層視圖時(例如,如果我將它們並排放置),則兩者都可以正確滾動。 但是,如果將一個作為另一個視圖的子視圖,則在平移它時只有子滾動視圖滾動,而在平移它時頂部的滾動視圖似乎被鎖定。

我設想,如果用戶平移嵌入式滾動視圖(下圖中的subSV),則只有嵌入式滾動視圖會滾動。 類似地,如果用戶平移頂部滾動視圖,則僅頂部滾動視圖將移動,並且嵌入式滾動視圖可以從可見內容中滾動出來。

您知道執行此操作的任何示例代碼嗎?

UIScrollView作為另一個UIScrollView的內容

顯然從3.0開始完全受支持,並且應該是自動的(請參閱http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/UIScrollView_pg/NestedScrollViews/NestedScrollViews.html )。 它們還提供了示例代碼,其中可能包含嵌套的UIScrollView的示例。

我能夠使其以編程方式工作,但無法使用StoryBoard。 這是一些瑣碎的代碼:

UIScrollView *topSV = [[UIScrollView alloc] initWithFrame:CGRectMake(100.0f, 100.0f, 600.0f, 600.0f)];
topSV.backgroundColor = [UIColor scrollViewTexturedBackgroundColor];
topSV.contentSize = CGSizeMake(2000.0f, 2000.0f);

UIScrollView *subSV = [[UIScrollView alloc] initWithFrame:CGRectMake(10.0f, 10.0f, 200.0f, 200.0f)];
subSV.backgroundColor = [UIColor whiteColor];
subSV.contentSize = CGSizeMake(2000.0f, 2000.0f);

[topSV addSubview:subSV];

[self.window addSubview:topSV];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM