美文网首页
记录一下一些项目碰到的小问题

记录一下一些项目碰到的小问题

作者: LD_X | 来源:发表于2017-10-18 00:17 被阅读19次

记录和统计一下一些项目碰到的小问题,想起时会记录更新一下。一般都是通用部分,部分业务不涉及。

1.富文本下划线,在10.3系统不正常

1.人民币符号修改成英文
2.NSBaselineOffsetAttributeName : @(NSUnderlineStyleSingle)
http://blog.csdn.net/Yj_sail/article/details/70257128

2.定位地址语言问题,定位出的地址需要传中文到后台匹配返回区域编号,未定位成功,后台根据ip定位返回区域编号。

一个碰到三个坑:
1.非中文处理
2.定位服务没有开启,跳转到设置,系统版本判断问题,使用宏错误。正确使用iOS10。
3.后台数据库,市升级区,匹配失败,返回数字0,类型错误,约定是字符串,约定完没有做异常判断。

/// 使用iOS10 API时要加`ifdef IOS10_SDK_ALLOWED`的判断
#ifndef __IPHONE_10_0
#define __IPHONE_10_0 100000
#endif
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
#define IOS10_SDK_ALLOWED YES
#endif
#define iOS10 (([[[UIDevice currentDevice] systemVersion] floatValue] >= 10.0) ? YES : NO)
// 地理位置反编码
- (void)reverseGeocoderWithLocation: (CLLocation *)location complation: (void (^)(CLPlacemark * placeMark, NSError * error))complationBlock
{
    // 反编码
    if (location) {
        // 保存 Device 的现语言 (英语 法语 ,,,)
        NSMutableArray *userDefaultLanguages = [[NSUserDefaults standardUserDefaults]
                                                objectForKey:@"AppleLanguages"];
        // 强制 成 简体中文
        [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"zh-hans",nil]
                                                  forKey:@"AppleLanguages"];
        [[NSUserDefaults standardUserDefaults] synchronize];
        CLGeocoder * geocoder = [[CLGeocoder alloc] init];
        [geocoder reverseGeocodeLocation:location completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
            for (CLPlacemark * placeMark in placemarks) {
                NSLog(@"%@", placeMark.postalCode);
            }
            if (!error) {
                // 反编码成功
                CLPlacemark * placeMark = [placemarks lastObject];
                complationBlock(placeMark, nil);
            } else {
                complationBlock(nil, error);
            }
            // 还原Device 的语言
            [[NSUserDefaults standardUserDefaults] setObject:userDefaultLanguages forKey:@"AppleLanguages"];
        }];
    }
}

3.tabbarvc 实例化 执行顺序不同

一般主tabbarvc不会带属性,但是二级tabbarvc就可以能带上属性了,赋值值发现慢了一拍,发现不一样了,具体见下链接,不展开说明了。
[http://blog.csdn.net/yuedong56/article/details/47123113]

相关文章

网友评论

      本文标题:记录一下一些项目碰到的小问题

      本文链接:https://www.haomeiwen.com/subject/krzvrttx.html