ios - UITableView does not display cell immediately after reloading data -
दृश्य में, सर्वर से तालिका दृश्य लोड डेटा
सफलता: ^ (NSArray * array) {If (! _dataSource) {_dataSource = [[@ [] म्यूटिवकॉपी]; } अगर (सरणी) {[_dataSource addObjectsFromArray: सरणी]; [_tableView पुनः लोडडेटा]; }}
फिर हर बार जब मैं नीचे से ऊपर खींचता हूं, तो सर्वर से नया डेटा प्राप्त कर लेता है और इसे _dataSource (पहली बार जैसे ही वही)
सफलता: ^ (NSArray * सरणी) {if (! _dataSource) {_dataSource = [[@ [] mutableCopy]; } अगर (सरणी) {[_dataSource addObjectsFromArray: सरणी]; [_tableView पुनः लोडडेटा]; }}
अब समस्या आ रही है: कभी-कभी नीचे से ऊपर खींचें, और नया डेटा सफलतापूर्वक प्राप्त करें, लेकिन तालिकादृश्य ताजा दृश्य प्रदर्शित नहीं करता है, जब मैं टेबलव्यू को साफ़ कर देता हूं नया सेल प्रदर्शित करने वाला बिट (यहां तक कि स्क्रीन को भी स्पर्श करें) । क्या समस्या यह हो सकती है?
संपादित करें
क्योंकि हर सेल एक ही ऊंचाई नहीं है, इसलिए मैं पुनः उपयोग सेल नहीं करता, और एक नया सेल init प्रत्येक समय, क्या यह कारण है?
// विषयकेल * सेल = [तालिका दृश्य dequeueReusableCellWithIdentifier: TopicCellIdentifier]; // if (! Cell) {// cell = [[विषयकेल alloc] initWithStyle: UITableViewCellStyleDefault reuseIdentifier: TopicCellIdentifier]; //} विषयकेल * सेल = [[टॉपिकेल आलोक] initWithStyle: UITableViewCellStyleDefault reuseIdentifier: TopicCellIdentifier];
@ जेफ़री थॉमस, सफलता सिर्फ एक वायुसेना ब्लॉकिंग है
AFHTTPRequestOperationManager * प्रबंधक = [एफ़एचटीटीपीआरसीएफ़एपरेशन मैनेजर मैनेजर]; [प्रबंधक GET: पथ मापदंडों: पैरामीटर सफलता: ^ (एफ़ एचटीटीपीआरएकेईएस्टऑपरेशन * ऑपरेशन 1, आईडी प्रतिक्रियाऑब्जेक्ट) {} विफलता: ^ (एफ़ एचटीटीपीआरएक्वेस्टऑपरेशन * ऑपरेशन 2, एनएसईआरआर * त्रुटि) {}]; पहला अनुमान के तौर पर, मैं यह सुनिश्चित करूँगा कि आप -reloadData चलाते हैं
मुख्य थ्रेड (कतार) पर। यह बहुत आसान है।
सफलता: ^ (NSArray * सरणी) {प्रेषक_असिनक (प्रेषण_आ_मैन_क्यूउ), ^ {if (! _dataSource) {_dataSource = [[@ [] म्यूटिवकॉपी];} अगर ( सरणी) {[_dataSource addObjectsFromArray: सरणी]; [_tableView पुनः लोडडेटा;}}}); }
Comments
Post a Comment