xcode - এক্সকোড 6.3 সতর্কতা: সংশ্লেষিত সম্পত্তি




dynamic warnings (5)

নতুন এক্সকোড 6.3 এ আমি এই সতর্কতাটি পেয়েছি:

অটো প্রপার্টি সংশ্লেষণ সম্পত্তি 'হোমইন্ট' সংশ্লেষিত করবে না; এটি এর সুপারক্লাস দ্বারা বাস্তবায়িত হবে, অভিপ্রায় স্বীকৃতি জানাতে @dynamic ব্যবহার করুন

আমি কীভাবে এটি সরাতে পারি?


@ বাস্তবায়ন মাইক্লাস

@synthesize homeInt = _ homeInt; ...

@শেষ


@ ম্লেসের মন্তব্য অনুসরণ করে, আমার ক্ষেত্রে আমি সম্পত্তিটির মূল শ্রেণীর একটি সাবক্লাসে সম্পত্তির ধরণটি সংশোধন করার জন্য সম্পত্তিটিকে ওভাররাইড করছি। সুতরাং, আমার @ প্রোপার্টি ওভাররাইডের দরকার নেই।

আমি যা ব্যবহার করছি তা এখানে:

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wobjc-property-synthesis"
// superclass type for currentValue was "id"
@property (nonatomic, strong) NSDate *currentValue;
#pragma clang diagnostic pop

মনে রাখবেন এটি "-Wobjc- সম্পত্তি-সংশ্লেষ" এবং "-নো-অবজেক্ট-সম্পত্তি-সংশ্লেষ" নয়

https://github.com/couchbase/couchbase-lite-ios/issues/660 দেখুন


আপনি যদি এক্সকোড .3.৩ এ আপডেট হন তবে কেবল এএফ নেটওয়ার্কিংকে ২.২.২ সংস্করণে আপডেট করুন এবং এই সতর্কতাগুলি অদৃশ্য হয়ে যাবে।


আপনি যদি সুপার ক্লাস থেকে উদ্দেশ্য হিসাবে একই সম্পত্তিটি ওভাররাইড করছেন:

@implementation MyClass

@dynamic homeInt;

...

যদি তা না হয় তবে সম্পত্তিটির নতুন নাম দিন।


শিশু শ্রেণির দ্বারা এই কারণটি প্যারেন্ট ক্লাসে একই সম্পত্তি নামের ওভাররাইডকে সংজ্ঞায়িত করে , যেমন :
1) শিশু শ্রেণি "এএফএইচটিটিপিএসসেশন ম্যানেজার" সংজ্ঞা দিয়েছে:

@property (nonatomic, strong) AFHTTPResponseSerializer <AFURLResponseSerialization> * **responseSerializer**;

2) অভিভাবক শ্রেণি "AFURL সেশন ম্যানেজার" সংজ্ঞা দিয়েছে:

@property (nonatomic, strong) id <AFURLResponseSerialization> **responseSerializer**;

3 above উপরের দিকে কারণ, সতর্কতা আসে! যদি এটি অপসারণ করতে চান, তবে কেবল বিরোধের সম্পত্তি নামটির নাম দিন!
4) বা এটি যেমন পরামর্শ দেয়, আপনার প্রয়োগকারী ফাইলে "@dynamic homeInt" যুক্ত করুন;





warnings