2011-06-08 16 views
6

मेरे पास तालिका दृश्य के संबंध में एक प्रश्न है।अनुभाग के भीतर अनुभाग - UITableView -

मुझे पता है कि हम अनुभागों और पंक्तियों की संख्या को वापस कर सकते हैं।

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 

आप मुझे बता सकते हैं कि कैसे मैं की तरह कुछ हो सकता है: (, और दूसरे खंड यदि संभव हो तो)

  • एक अनुभाग के भीतर एक वर्ग - - और तो पंक्तियों कॉन्फ़िगर वहाँ?

और क्या मैं

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView 

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 

उत्तर

9

आप cellForRowAtIndexPath में अपने स्वयं के कार्यान्वयन सुनिश्चित करने के लिए जहां एक पंक्ति है कि वास्तव में कई पंक्तियों और शायद एक हैडर लेबल से बना है वापसी करना होगा में लौट आते हैं। या शायद बेहतर है कि हर दूसरी पंक्ति को "हेडर पंक्ति" बनाएं और सेलफॉररोएट इंडेक्सपैथ में जांचें कि क्या आप "हेडर पंक्ति" या सामान्य पंक्ति पर हैं; कुछ इस तरह:

if (indexPath.row == 0) { 
    // return header row 
} else { 
    // return normal row 
} 

और numberOfRowsInSection में निश्चित रूप से आप एक हेडर के साथ वर्गों के लिए पंक्तियों + 1 की सामान्य मात्रा लौटने के लिए होगा।

+1

तार्किक रूप से शानदार लगता है! मैं नंबरऑफक्शन और संख्या OfRowsInSection में क्या वापस आऊंगा? – Legolas

+1

अच्छी तरह से मान लें कि आपके पास 3 मुख्य अनुभाग हैं और अनुभाग 1 में 3 उप-अनुभाग हैं। संख्याऑफक्शन 3 होना चाहिए और आप संख्या ofRowsInSection के लिए पंक्तियों + 3 वापस कर देंगे जब सेक्शन == 0. शीर्षलेख और 3 पंक्तियों के लिए एक। और cellForRowAtIndexPath में आप केवल विशेष शीर्षलेख पंक्ति वापस कर देंगे जब indexPath.row == 0. – vakio

+1

क्षमा करें मेरा मतलब है (पंक्तियों की सामान्य संख्या) + 3 शीर्षलेख पंक्तियां। हेडर और फिर सामान्य पंक्तियों के लिए 3। और अब आपको यह पता चलाना होगा कि आप हेडर का उपयोग कहां कर रहे हैं, इसलिए जब CellForRowAtIndexPath में आप धारा 0, 5, और 8 को धारा 0 में कहने के लिए एक शीर्षलेख वापस कर देंगे। इसका मतलब है कि आपके पास सामान्य पंक्तियां 1,2,3 हैं, 4 (उपधारा 1), 6,7 (उपधारा 2) इत्यादि। यह उप-उपखंडों के लिए जटिल (और भी अधिक) प्राप्त होगा, लेकिन आप एनएसडीईजीई या कुछ के भीतर एनएसडीई का उपयोग करके उनमें से पूरे पेड़ को उत्पन्न कर सकते हैं। – vakio

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