美文网首页
适配iOS 13

适配iOS 13

作者: Arthur澪 | 来源:发表于2020-03-03 15:30 被阅读0次

    Tabbar

    -

    问题:选中的tabbar item的title。当你push到一个vc,然后pop回去之后,tabbar就会出现系统按钮的蓝色文字。

    // 选中颜色
    self.tabBar.tintColor = seleledColor;
    

    通过 KVC 的方式访问私有属性

    UISearchBar的输入框

    UITextField *searchField;
    if (@available(iOS 13.0, *)) {
         searchField = [_searchBar valueForKey:@"_searchTextField"];
    }else{
          searchField = [_searchBar valueForKey:@"_searchField"];
    }
    

    UITextField的Placeholder的颜色和字体

    [_textField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"];
    [_textField setValue:[UIFont systemFontOfSize:14] forKeyPath:@"_placeholderLabel.font"];
    

    改成

    _textField.attributedPlaceholder = [[NSAttributedString alloc] initWithString:@"姓名" attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14],NSForegroundColorAttributeName:[UIColor redColor]}];
    

    友盟远程推送

    获取deviceToken时需要处理才能得到。

    -(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{
        
        if (![deviceToken isKindOfClass:[NSData class]]) return; 
        
        if (@available(iOS 13.0, *)){
            //  #include <arpa/inet.h>     //   先导入
    
            const unsigned *tokenBytes = (const unsigned *)[deviceToken bytes];
            NSString *hexToken = [NSString stringWithFormat:@"%08x%08x%08x%08x%08x%08x%08x%08x",
                                  ntohl(tokenBytes[0]), ntohl(tokenBytes[1]), ntohl(tokenBytes[2]),
                                  ntohl(tokenBytes[3]), ntohl(tokenBytes[4]), ntohl(tokenBytes[5]),
                                  ntohl(tokenBytes[6]), ntohl(tokenBytes[7])];
            
            PDLog(@"deviceToken:%@",hexToken);
        }else{
            
            NSString *devtkstr = [[[[deviceToken description] stringByReplacingOccurrencesOfString: @"<" withString: @""]
                                   stringByReplacingOccurrencesOfString: @">" withString: @""]
                                  stringByReplacingOccurrencesOfString: @" " withString: @""];
             
            PDLog(@" dev tok===> %@\n===>\n",devtkstr);
        }
    }
    

    友盟SDK

    升级版本pod 'UMCCommon' , '~> 2.1.1'

    模态弹出presentViewController

    设置

    vc.modalPresentationStyle = UIModalPresentationFullScreen;
    

    黑夜模式

    不需要的话,可关闭暗黑模式。在info.plist中设置


    -

    或者使用代码:
    self.window.overrideUserInterfaceStyle = UIUserInterfaceStyleLight;
    强制浅色模式是最快解决方式,尽量不要去info.plist去加Key,容易被拒。

    苹果登录

    如果 APP 支持三方登陆(Facbook、Google、微信、QQ、支付宝等),就必须支持苹果登陆,且要放前边。

    相关文章

      网友评论

          本文标题:适配iOS 13

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