还是pod的问题
miku1958 opened this issue · comments
pod的时候reverse不是直接放在mainBundle下的,而是放在mainBundle下的Frameworks/FGReverser.framework/reverse
可以改为
- (NSDictionary *)mapper {
if(!self.reverseMap) {
NSString *mapPath = [NSBundle.mainBundle pathForResource:@"reverse" ofType:nil];
if(!mapPath.length){
mapPath = [NSBundle.mainBundle pathForResource:@"Frameworks/FGReverser.framework/reverse" ofType:nil];
}
self.reverseMap = [NSDictionary dictionaryWithContentsOfFile:mapPath];
}
return self.reverseMap;
}
我顺便拓展了一下方法可以来回转,能否考虑一下加到原始项目中?(x这样我就不用写多一个分类了
- (NSString*)toSimplfiedChinese{
return [self convertSimplfiedTraditional:-1];
} - (NSString*)toTraditionalChinese{
return [self convertSimplfiedTraditional:1];
}
///flag >0时转成繁体,其余转成简体 - (NSString*)convertSimplfiedTraditional:(NSInteger)flag{
NSDictionary<NSString *,NSString *> *map = [self mapper];
NSMutableString *resultString = self.mutableCopy;
[resultString enumerateSubstringsInRange:NSMakeRange(0, resultString.length) options:NSStringEnumerationByComposedCharacterSequences usingBlock:^(NSString * substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) {
[map enumerateKeysAndObjectsUsingBlock:^(NSString *key, NSString *obj, BOOL *stop) {
if (flag >0) {//转成繁体
if ([substring isEqualToString:key]) {
[resultString replaceCharactersInRange:substringRange withString:obj];
*stop = YES;
}
}else{
if ([substring isEqualToString:obj]) {
[resultString replaceCharactersInRange:substringRange withString:key];
*stop = YES;
}
}
}];
}];
return self;
}
你好,感谢你的建议,这个reverseString本身是可逆的互转。
你西药更新pod请在终端执行pod repo update 或者pod setup更新你的pod.
最新版1.1亲测可用,安装 "pod FGReverser", "~> 1.1"
请确保你安装的是1.1版本。
1.1才可以
你好,我用的是1.1,1.1下[self mapper]拿到的一直是空的我才去看了一下
我的意思是,在不知道输入源是简体还是繁体的时候,只想转成简体或者繁体,并不是想互转
@miku1958 感谢你的反馈,已经确认问题存在!我会即可提交更新谢谢!
[release 2.0] 解决资源文件找不到的问题,并实现繁简互转统一一个方法,重命名转换方法。
pod repo update
pod "FGReverser", "~> 2.0"
pod install