سؤال

هل هناك طريقة للحصول على ملف localizable.strings أساسي واحد لأهداف متعددة داخل المشروع، وكذلك الحصول على ملف localizable.string ثانٍ لكل هدف والذي سيتجاوز القيم الفردية ويلحقها بالملف الأساسي؟

يحرر

أريد أن يحتوي تطبيقي على ملفين .strings - Localizable.string وOverride.strings.إذا لم يتم العثور على سلسلة، Title.Welcome، في OverrideLocalizable.strings، فأنا أرغب في أن يبحث التطبيق في Localizable.strings عن Title.Welcome.بشكل أساسي، تحديد Localizable كبديل، ولكن باستخدام OverrideLocalizable.strings افتراضيًا.

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

المحلول

هذا هو الحل الذي وجدته:

NSString *PSILocalizedString(NSString *key, NSString *comment)
{
    return NSLocalizedStringWithDefaultValue(key,
                                             @"OverrideLocalizable",
                                             [NSBundle mainBundle],
                                             NSLocalizedString(key, nil),
                                             comment);
}

ما سيفعله هذا هو البحث في ملف يسمى OverrideLocalizable.strings ل key.إذا كانت القيمة ل key لم يتم العثور على OverrideLocalizable.strings, ، سوف يبحث localizable.strings ل key. NSLocalizedString(key, nil) افتراضيا سيتم البحث localizable.strings

حل بسيط جدا وأنيق

نصائح أخرى

بالنسبة للمستخدمين SWIFT 4 الذين صادفوا هذه المشكلة ...

giveacodicetagpre.

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