هي الطريقة addsubview of nsview بطيئة بطبيعتها؟ (الكاكاو OSX)

StackOverflow https://stackoverflow.com/questions/2435414

سؤال

أحاول أن أقوم بتسريع واجهة المستخدم الرسومية التي تغطي بطيئة بطيئة للغاية عندما أقوم بتحميل مشروع كبير (GUI هو تمثيل للمجموعات والمجموعات الفرعية وتتكون من العديد من وجهات النظر). خلال هذه العملية كنت أبحث عن المدة التي تتخذ بعض شرائح التعليمات البرمجية، وقد وجدت أن مكالمة إلى addsubview تتناول ما بين 10 و 20 مللي ثانية معظم الوقت. كان المستوى الفرعي الذي كنت أبحث عنه هو زر الإفصاح. أتساءل عما إذا كانت هذه الطريقة بطيئة بطبيعتها أو هي بعض العامل الآخر في العمل هنا؟ هو الوقت الذي يستغرقه إضافة المعاد الفرعي المعتمد على تعقيد الفرعية الفرعي أو أنه ليس عاملا؟ أيضا، هل هناك طريقة أخرى يمكن استخدامها لإضافة فرعية قد يكون أسرع؟

هل كانت مفيدة؟

المحلول

يمكنك تجربة -SetsubViews: التي تأخذ مجموعة من المجموعات الفرعية. قد يكون هذا أسرع ثم استدعاء -Addsubview: عدة مرات بنفسك.

خلاف ذلك، addsubview: addsubview: وضع: relativeto: هي الأساليب الأخرى الأخرى لإدراج فروعي.

أنا فضولي، على الرغم من ذلك، لماذا هو 10 - 20 مللي ثانية لإبطاء لبرنامج فرعي واحد؟ كم عدد الشركات الفرعية التي تحاول إضافتها؟

من الممكن وجود تصميم بديل باستخدام NSCELL's قد يكون أسرع، ولكن دون معرفة المزيد من التفاصيل حول ما تحاول تحقيقه، من الصعب معرفة ذلك.

نصائح أخرى

إعادة ترتيب التسلسل الهرمي الرأي ليس شيئا ستفعله عادة في كثير من الأحيان. بدلا من إضافة وإزالة المفتويات الفرعية، يمكنك إخفاء وإخفاءهم.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top