عند تحديث الكود من Swift 1.0 إلى Swift 2.2، هناك عدة تغييرات يجب إجراؤها. في Swift 2.2 تم استبدال stringByAppendingPathComponent
بـ appendingPathComponent
وتم تغيير طريقة الاستدعاء لتتناسب مع التغييرات الجديدة في اللغة. إليك كيف يمكن تحديث الكود الخاص بك:
swiftclass func getPath(filename: String) -> String {
let documentsDirectory = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as NSString
return documentsDirectory.appendingPathComponent(filename)
}
تم استبدال NSSearchPathDirectory.DocumentDirectory
بـ .documentDirectory
و NSSearchPathDomainMask.UserDomainMask
بـ .userDomainMask
لتتناسب مع التغييرات في Swift 2.2. تم أيضًا استخدام as NSString
لتمكين استخدام دالة appendingPathComponent
على كائن NSString بدلاً من String.
-
تحويل كود Jekyll إلى PHP23/03/2024
-
نماذج سيرة ذاتية جاهزة | CV Templates31/10/2023
يمكنك استخدام هذا التحديث في كودك ويجب أن يعمل بشكل صحيح في Swift 2.2.
المزيد من المعلومات
بالتأكيد، إليك المزيد من المعلومات حول التحديثات التي تم إجراؤها في Swift 2.2 بالنسبة للكود الخاص بك:
-
من
stringByAppendingPathComponent
إلىappendingPathComponent
:
في Swift 2.2، تم استبدال الدوال التي تبدأ بـstringBy
بدوال تبدأ بـappending
، وذلك لمواءمة معايير التسمية الجديدة. لذا تم تحويلstringByAppendingPathComponent
إلىappendingPathComponent
. -
تغيير في استدعاء
NSSearchPathForDirectoriesInDomains
:
تم تغيير توقيع دالةNSSearchPathForDirectoriesInDomains
في Swift 2.2، حيث تم استبدالNSSearchPathDirectory.DocumentDirectory
بـ.documentDirectory
وNSSearchPathDomainMask.UserDomainMask
بـ.userDomainMask
، مما يتيح استخدامها كأعضاء ثابتين داخليين لنوعي البيانات المذكورين. -
تحويل String إلى NSString:
حيث أنappendingPathComponent
متاحة فقط على NSString في Swift 2.2، تحتاج إلى تحويل القيمة التي تم إرجاعها منNSSearchPathForDirectoriesInDomains
إلى NSString باستخدامas NSString
.
باستخدام التغييرات المذكورة أعلاه، يجب أن يكون لديك الكود الذي يعمل بشكل صحيح في Swift 2.2.