2012-04-19 13 views
5

मेरे पास एक व्यू कंट्रोलर है जो 2 टेबल, व्यू आधारित टेबल और सेल आधारित टेबल के लिए प्रतिनिधि है। सेल आधारित तालिका पर कॉल कर रही है जब इसे objectValueForTableColumn पर कॉल करना चाहिए। मैंने दोगुना सुनिश्चित किया कि यह इंटरफ़ेस बिल्डर में एक सेल आधारित तालिका थी।मेरा सेल आधारित NSTableView कॉलिंग व्यूफोर कॉलम क्यों है?

+0

मैं एक ही समस्या है वापसी: तो फिर तुम स्ट्रिंग आप इस कोड का उपयोग सेल में प्रदर्शित करना चाहते हैं। मैं NSViewController उदाहरण दोनों दृश्य आधारित और सेल आधारित तालिकाओं के लिए एक प्रतिनिधि बनना चाहता हूं। दुर्भाग्यवश, तालिका दृश्य के दौरान: viewForTableColumn: पंक्ति: विधि को सेल आधारित के लिए बुलाया जाता है, इसकी सामग्री बिल्कुल प्रदर्शित नहीं होती है। – dzolanta

उत्तर

5

यदि NSTableView का प्रतिनिधि tableView:viewForTableColumn:row: विधि लागू करता है, तो NSTableView स्वचालित रूप से देखने के लिए स्विच करता है। आपको 2 टेबल दृश्यों के लिए अलग-अलग प्रतिनिधि बनाना होगा

1

व्यू-आधारित तालिका दृश्य और सेल-आधारित तालिका दृश्य मिश्रण नहीं करते हैं, आप या तो दो अलग-अलग प्रतिनिधि हो सकते हैं या आप सेल बेस तालिका को एक में बदल सकते हैं आधारित तालिका देखें और फिर इसे एक सेल आधारित तालिका की तरह लग रहे बनाने के लिए tableView:viewForTableColumn:row: में निम्न कोड का उपयोग करें:

NSTableCellView *cell = [tableView makeViewWithIdentifier:@"textFieldCell" owner:self];

जहां textFieldCell सेल के पहचानकर्ता है। विधि के अंत में

[[cell textField] setStringValue:desiredString];

चर सेल

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