TableView के लिए NSIndexPath कैसे बनाएं


243

मेरे द्वारा परिभाषित फ़ंक्शन में तालिका की पंक्ति 1 को हटाने की आवश्यकता है। उपयोग करने के लिए deleteRowAtIndexPathआपको IndexPathपरिभाषित अनुभाग और पंक्ति के साथ उपयोग करना होगा । मैं इस तरह एक इंडेक्सपाथ कैसे बना सकता हूं?

Int {1} के साथ एक सरणी जिसके केवल सदस्य दुर्घटनाग्रस्त हो जाएगा; NSLog संदेश बताता है कि अनुभाग को परिभाषित करने की आवश्यकता है।

* संपादित करें -> सेल हटाने से संबंधित कोड:

    NSIndexPath *myIP = [[NSIndexPath alloc] indexPathForRow:0 inSection:0];
    NSArray *myArray = [[NSArray alloc] initWithObjects:myIP, nil];
//  [self.tableView beginUpdates];
    [self.tableView deleteRowsAtIndexPaths:myArray withRowAnimation:UITableViewRowAnimationFade];
//  [self.tableView endUpdates];

जवाबों:


646

[NSIndexPath indexPathForRow:inSection:]सूचकांक पथ बनाने के लिए जल्दी से उपयोग करें ।

संपादित करें: स्विफ्ट 3 में:

let indexPath = IndexPath(row: rowIndex, section: sectionIndex)

स्विफ्ट 5

IndexPath(row: 0, section: 0)

118

indexPathForRow एक वर्ग विधि है!

कोड को पढ़ना चाहिए:

NSIndexPath *myIP = [NSIndexPath indexPathForRow:0 inSection:0] ;

18

स्विफ्ट में अप्रचलित जवाब: NSIndexPath(forRow:row, inSection: section)

आप नोटिस करेंगे कि NSIndexPath.indexPathForRow(row, inSection: section)स्विफ्ट में उपलब्ध नहीं है और इंडेक्सपाठ के निर्माण के लिए आपको पहली विधि का उपयोग करना होगा।


17

स्विफ्ट 3 के लिए यह अब है: IndexPath(row: rowIndex, section: sectionIndex)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.