मैं ओएस एक्स कोको प्रोग्रामिंग के लिए बिल्कुल नया हूं लेकिन इसे नई स्विफ्ट भाषा के साथ जाने का फैसला किया है।एनएसटीबलव्यू व्यू आधारित स्क्रॉलिंग प्रदर्शन
मेरे पास 1500 पंक्तियां (अधिक होगी) और 7 कॉलम के साथ NSTableView
है। एक चेकबॉक्स कॉलम है और बाकी टेक्स्ट फ़ील्ड हैं, एक डेट फॉर्मेट वाला एक और एक मुद्रा फॉर्मेटर है। मैंने इसे पहले सेल आधारित के रूप में सेट किया है। स्क्रॉलिंग बटररी चिकनी थी (मैंने एक लाख भी पंक्तियों को जोड़ने का परीक्षण किया, अभी भी चिकनी)। यह mavericks के तहत था।
तब मैं Yosemite में अपग्रेड किया गया, स्क्रॉलिंग प्रदर्शन में काफी गिरावट आई है। तालिका दृश्य पर कोर एनीमेशन परत चेकबॉक्स को सक्षम करने से यह सुधार हुआ लेकिन मैवरिक्स की तुलना में अभी भी बदतर था।
योसैमेट में स्क्रॉल प्रदर्शन को बेहतर बनाने की कोशिश करने के दौरान मेरे पढ़ने के दौरान मैं "व्यू-आधारित" एनएसटीबल व्यूज़ में आया। प्रलेखन से यह कहा गया है कि सेल आधारित टेबल दृश्यों का आमतौर पर उपयोग नहीं किया जाना चाहिए और केवल विरासत परियोजनाओं के लिए समर्थित हैं।
इसलिए मैंने अपनी तालिका को एक व्यू आधारित तालिका दृश्य में परिवर्तित कर दिया। नमूना सरल अवधारणा, कुछ भी जटिल नहीं है। स्क्रॉलिंग प्रदर्शन बिल्कुल भयानक है। यदि आप बहुत धीमी गति से स्क्रॉल करते हैं तो यह काफी चिकनी है, लेकिन जैसे ही आप तेजी से स्क्रॉल करना शुरू करते हैं, जैसे कि यह पर्याप्त रूप से बफर नहीं हुआ है और यह स्टटरिंग और झटके लगाना शुरू कर देता है। इसके अलावा जब NSTableview
पॉप्युलेट किया गया है, तो खिड़की पर ध्यान केंद्रित करने और स्थानांतरित करने में दूसरी या अधिक लगती है (मैंने इसे फिर से मैवरिक्स में आजमाया और यह मौजूद नहीं था, स्क्रॉलिंग थोड़ा बेहतर था, लेकिन अभी भी सेल आधारित नहीं है)।
प्रदर्शन आधारित NSTableviews
प्रदर्शन को स्क्रॉल करने के लिए हमेशा खराब है? यदि ऐसा है तो सेब सेल आधारित NSTableviews
पर उनका उपयोग करने की सलाह क्यों देता है।
इसके अलावा सफारी और रीडर 2 जैसे कुछ अनुप्रयोगों में योसैमेट में भी बटररी चिकनी स्क्रॉलिंग है। वे इसे कैसे प्राप्त करते हैं?
क्या मुझे कुछ याद आ रही है या ओएस एक्स का प्रदर्शन सिर्फ हर नई चीज़ के साथ नरक में जा रहा है? यानी
मावेरिक्स> Yosemite
कोशिका आधारित> दृश्य-आधारित
पुराने> नई
किसी भी मदद की बहुत सराहना कर रहा है। धन्यवाद!
क्या आपने इस समस्या को हल किया? –
नहीं। दुर्भाग्य से नहीं। मैंने विकास को रोक दिया है और इसे छोड़ने से पहले ओएस एक्स के अगले संस्करण में फिर कोशिश करेंगे। – Gavin
क्या आपने रडार पर एक बग की रिपोर्ट की थी? ऐसा नहीं है कि ऐप्पल की परवाह होगी, लेकिन जिज्ञासा से बाहर। मैं वास्तव में महसूस करता हूं, वास्तव में ऐप्पल द्वारा pissed। जब तक मैं अपनी बड़ी तालिका में टेक्स्टफिल्ड्स का उपयोग करता हूं, तब तक यह चिकनी है, लेकिन एक बार जब मैं केवल एक रंगीन बॉक्स/टेक्स्टफिल्ड व्यू जोड़ता हूं तो स्क्रॉल करते समय यह सभी CPU खाने शुरू होता है। योसामेट बेकार है :-( –