У меня было много расширений класса , написанных ранее, например:
Мой файл заголовка, NSDate + comfort.h:
@interface NSDate (Convenience)
+ (NSDate *)dateFromMyString:(NSString *)dateString
withDateFormatStr:(NSString *)dateFormatStr;
@end
Файл моей реализации Obj-C, NSDate + comfort.m:
@implementation NSDate (Convenience)
+ (NSDate *)dateFromMyString:(NSString *)dateString
withDateFormatStr:(NSString *)dateFormatStr {
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setLocale:[NSLocale currentLocale]];
[formatter setTimeZone:[NSTimeZone localTimeZone]];
[formatter setDateFormat:dateFormatStr];
return [formatter dateFromString:dateString];
}
@end
Я использую свое Расширение класса NSDate в цели c следующим образом:
[NSDate dateFromMyString:[NSDate date] withDateFormatStr:@"yyyyMMdd-HHmmss-SSS"]
Но когда хочу использовать его в Swift, что-то вроде:
NSDate.dateFromMyString(dateString: dateStr, DateFormatStr: "yyyyMMdd-HHmmss-SSS")
или
NSDate.dateFromMyString(bla bla bla ...)
В любом случае, NSDate не имеет члена, подобного 'dateFromMyString', у меня есть много расширений классов, которые я написал ранее.Нужно ли мне снова реализовать эти расширения классов в Swift.
Я должен подчеркнуть, что , я могу использовать свои обычные свойства и методы классов Obj-C в Swift, но я могу 't использовать файл obj-C, который является расширением Obj-C. Поэтому, пожалуйста, не давайте мне ссылку «Как вызвать код Objective-C из Swift» .Пожалуйста поймите мой вопрос.