2013-10-21 9 views
13

मैं इसे की तरह एक UIRefreshControl (एक UITableViewController के बिना) का उपयोग करने के एक शीर्ष इनसेट दें:UIRefreshControl

UIRefreshControl *refreshControl = [UIRefreshControl new]; 
[refreshControl addTarget:self action:@selector(viewDidBeginRefreshing:) forControlEvents:UIControlEventValueChanged]; 
[self.table addSubview:refreshControl]; 

समस्या ताज़ा पहिया UINavigationController के पारभासी (iOS7) पट्टी के नीचे रखा जाता है है। स्टैक ओवरव्लो पर इस समस्या पर केवल कुछ विषय हैं। और उन्होंने मेरे लिए कोई मूल्यवान समाधान नहीं लाया।

मेरी इच्छा है कि मेरी यूआईआरफ्रेश कंट्रोल की स्थिति 80px नीचे उदाहरण दें।

नोट: मुझे पता है कि UITefreshController के बाहर UIRefreshControl का उपयोग करने की अनुशंसा नहीं की जाती है। तो इसके बारे में चेतावनी देने की कोई ज़रूरत नहीं है।

+0

यह ध्यान देने योग्य हो सकता है कि मेरा यूआईटीबल व्यू ऑटो-लेआउट के साथ स्थापित है, जैसा कि मेरे बाकी विचार, प्रोग्रामेटिक रूप से। (लेकिन इसके साथ कुछ भी नहीं करना चाहिए) – AncAinu

उत्तर

27

मैं एक समाधान है, बहुत ही सरल है, तो साफ नहीं मिला लेकिन एक आकर्षण की तरह काम करता है।

बस एक और सबव्यूव में रीफ्रेश नियंत्रण डालने की आवश्यकता है जो सेट है।

UIView *refreshView = [[UIView alloc] initWithFrame:CGRectMake(0, 80, 0, 0)]; 
[self.table addSubview:refreshView]; 

UIRefreshControl *refreshControl = [UIRefreshControl new]; 
[refreshControl addTarget:self action:@selector(viewDidBeginRefreshing:) forControlEvents:UIControlEventValueChanged]; 
[refreshView addSubview:refreshControl]; 
+2

जैसा कि ऊपर दिखाया गया है, 'यूआईवीएफ़िव्यू' को कंटेनर 'UIView' में एक सबव्यूव के रूप में जोड़ने के पहले 'UITableView' में कंटेनर' UIView' को जोड़ना सुनिश्चित करें। मैंने इसे विपरीत बना दिया था और यह विफल रहता है। – pechar

+0

''UIRefreshControl केवल UITableViewController द्वारा प्रबंधित किया जा सकता है', मुझे लगता है कि इस मुद्दे के कारण @pechar नोट्स – SimplGy

0

अपने UIViewController में viewDidLoad में जोड़ने के लिए प्रयास करें:

if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) 
    self.edgesForExtendedLayout = UIRectEdgeNone; 
+0

यह काम करता है लेकिन ... जिस तरह से मैं चाहता हूं, यह नेविगेशन बार अपारदर्शी बनाता है और पूरी तालिका को बाधित करता है। – AncAinu

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