簡體   English   中英

為什么UITableView可以始終滾動但UIScrollView不能滾動

[英]Why UITableView can always scroll but UIScrollView can't

無論UITableView內容大小如何,它始終可以滾動。 但是現在我想要UIScrollView也喜歡它.....

首先,我使用如下代碼:

self.scrollView.contentSize = CGSizeMake(0, self.view.frame.size.height - 63);

它確實可以工作,但是現在我使用AutoLayout,它說我必須確定內容的大小。

該應用必須適應iPhone4〜iPhone 6 Plus,因此內容的大小不能確定,它總是小於屏幕減去1,就像這樣(因為狀態欄和導航欄占據了64像素)

self.scrollView.contentSize = CGSizeMake(0, self.view.frame.size.height - 63);

順便說一句,如果我不確定大小,並在- (void)viewDidLoad編寫此代碼,而Xcode只是對其進行編譯,則不會影響APP的運行。

希望您能給我更好的方法。

我已經解決了這個問題,只需添加此scrollView.alwaysBounceVertical = YES ,然后無論內容是否超出框架,我都可以滾動ScrollView

首先,我幾乎不了解您想要什么。

現在是技術部分:

  1. 這不是一個好習慣,地獄,您永遠不要更改UITableView的內容大小, UITableView始終基於heightFirRowAtIndexPathheightForHeader...和其他heightFor...方法計算其內容大小,這就是表格將滾動(當然,如果方法正確實施)

  2. UIScrollview不會自行計算內容大小,因為它不是那樣設計的,因此您必須為其指定內容大小。 通常,當UIScrollView不滾動時,這是因為contentSize小於滾動的框架大小,因此不必滾動。

  3. 使用自動布局實現UIScrollView有點棘手,您必須進行一些調整,但是Apple 在此處提供了一些示例,說明如何進行。 稍作搜索也會發現大量的示例。

暫無
暫無

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

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