الهدف - C ثابتة الكتلة فئة فئة، طريقة تجاوز لا تعمل

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

  •  13-09-2019
  •  | 
  •  

سؤال

أنا أستخدم ثلاثة20 لجهاز iPhone وأحاول تغيير الطريقة التي تقوم بها الطريقة داخلها باستخدام فئة فئة. إنه يجمع بشكل جيد، لكنني لا أتصل أبدا إلى نقطة الانهيار فيه.

أفترض أن فئة فئة تؤثر على كافة مثيلات الفصل، لذلك ليس لدي إعادة ترجمة المكتبة الثابتة لعملها.

أعلم أيضا أن الفئة التي أستخدمها في الفئة قد شوهدت لأنه إذا قمت بإضافة "X" إلى نهاية اسم الفصل عندما أقوم بواجهة وتنفيذ فئة فشل التحويل البرمجي.

أي إرشادات هنا موضع تقدير للغاية.

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

المحلول

كما هو مدبب هنا, ، ستحتاج إلى تحديد خيار -L_LOAD في أعلام روابط التطبيق الأخرى الخاصة بك من أجل ربط الفئات بالمكتبات الثابتة في iPhone OS 3.0. يجب على PJC القيام بالحيلة أيضا، لكنها لا تعمل على SDK الحالي. اعتبارا من برنامج التحويل البرمجي LLVM في XCode 4.2، قاموا بإصلاح علة Linker الذين منعوا علامة الرابط الأخرى من -OBJC من العمل بشكل صحيح، لذلك لم تعد بحاجة إلى استخدام -load_load (الذي يحتوي على بعض الآثار الجانبية سيئة). يجب أن يكون Pejc كل ما تحتاجه للحصول على فئات يتم سحبها من مكتبة ثابتة.

قد يساهم هذا في مشكلتك، على الرغم من أنني أعتقد أن Three20 يتطلب تعيين إشارات المرتبطة لهذه الرابط بشكل صحيح مع طلبك في المقام الأول، لذلك قد يكون لديك بالفعل هذه الأعلام في مكانها.

نصائح أخرى

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

لدي مشروع يربط بمكتبة ثابتة ونعم مطلوب علامة -L_Load عند التثبيت على الجهاز باستخدام 3.0 SDK. كان PJC كل ما هو مطلوب للمحاكاة.

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