2015-01-29 10 views
6
tableView.setContentOffset(CGPointMake(0, tableView.contentSize.height - tableView.frame.size.height), animated: true) 

यह काम करता है, लेकिन मैं क्या वास्तव में आश्चर्य है उन दो मान हैं: tableView.contentSize, tableView.frame.sizeक्या tableView.contentSize 'और' tableView.frame.size 'के बीच अंतर है

+0

यह वास्तव में क्या दिखाया गया है और वास्तविकता में पूरा आकार क्या है ("छिपी हुई" सामग्री को गिनने के बारे में, जो आप स्क्रॉल करते हैं, को छोड़कर दिखाया नहीं गया है) – Larme

+2

यदि आप गहरी जाना चाहते हैं, तो इस पर एक नज़र डालें [ इस] (http://www.objc.io/issue-3/scroll-view.html) – Ethaan

उत्तर

12

contentSize आकार है UIScrollView की सामग्री का, इसका मतलब है कि यह सामग्री का आकार (छुपा और दृश्यमान) होगा जबकि frame.size आपकी तालिका का वास्तविक आकार दृश्य है।

उदाहरण के लिए, मान लें कि मेरे पास 568 (ऊंचाई) की डिवाइस की स्क्रीन है, और इसके अंदर, मेरे पास UITableView (सभी स्क्रीन लेना) 100 सेल्स और उनमें से प्रत्येक के लिए 50 की ऊंचाई है। मेरे tableView.frame.size.height 568 के बराबर होगा, लेकिन tableView.contentSize.height सभी कोशिकाओं की पुस्तक के आकार के बराबर होगा, तो 5000

इसके अलावा, जैसा @Ethaan ने सुझाव दिया, गहराई में जाने के लिए this पढ़ें।

संबंधित मुद्दे