秒验 iOS端如何修改授权页背景

修改授权页背景为透明色

基于一键登录的拉起授权页功能,如果想要修改授权页的背景颜色,来调整成符合自己app样式的背景。以下代码示例主要介绍如何修改授权页的背景颜色,例如将授权页背景修改为透明色:

复制代码
-(void)login
{
    //创建一个Ui配置对象
    SVSDKHyUIConfigure * Ui = [SVSDKHyUIConfigure new];
    Ui.currentViewController = self;

    //需要注意的是:要想将授权页设置为透明色需要设置modalPresentationStyle为UIModalPresentationOverFullScreen
    Ui.modalPresentationStyle = @(UIModalPresentationOverFullScreen);//Swift
中可以设置为iConfigure.modalPresentationStyle = 5

    [SVSDKHyVerify setDelegate:self];
    [SVSDKHyVerify openAuthPageWithModel:Ui openAuthPageListener:^(NSDictionary * _Nullable resultDic, NSError * _Nullable error) {

           if(error!=nil)
           {
               //拉起授权页失败
               NSLog(@"%@",error.description);
           }
           else
           {
               //拉起授权页成功

               NSLog(@"成功");

           }
       } cancelAuthPageListener:^(NSDictionary * _Nullable resultDic, NSError * _Nullable error) {
           //点击sdk自带返回,关闭,其他方式登录(添加的自定义关闭按钮事件不会触发此回调)
           NSLog(@"====%@",resultDic);
           NSLog(@"----%@",error.description);

       } oneKeyLoginListener:^(NSDictionary * _Nullable resultDic, NSError * _Nullable error) {
           //一键登录点击获取token回调
           //关闭页面,当Ui.manualDismiss = @(YES);时需要手动调用此方法关闭

          // [SVSDKHyVerify hideLoading];
           if (error==nil) {
               //获取token成功,开始调用token置换手机号接口
               NSLog(@"%@",resultDic);


               Ui.manualDismiss = @(YES);
               [SVSDKHyVerify finishLoginVcAnimated:YES Completion:^{
   //                SectionViewController * view = [[SectionViewController alloc] init];
   //                [self presentViewController:view animated:YES completion:^{
   //
   //                }];
               }];
           }
           else
           {
               //获取token失败,可以自定义跳转到其他界面
           }
       }];
}

-(void)svVerifyAuthPageViewDidLoad:(UIViewController *)authVC userInfo:(SVSDKHyProtocolUserInfo *)userInfo
{
    //授权页view
    UIView * authpage = authVC.view;

    //1.授权页背景设为透明或半透明,作为弹窗的背景蒙层
    authpage.backgroundColor = UIColor.clearColor;

    //后面代码可以自己作处理

    ```
}

修改授权页背景为图片

基于一键登录的拉起授权页功能,如果想要修改授权页的背景图片,来调整成符合自己app样式的背景。以下代码示例主要介绍如何修改授权页的背景图片,注意最后需要将背景图层置于所有图层最底部,具体实现如下:

复制代码
-(void)login
{
    //创建一个Ui配置对象
    SVSDKHyUIConfigure * Ui = [SVSDKHyUIConfigure new];
    Ui.currentViewController = self;
    [SVSDKHyVerify setDelegate:self];
    [SVSDKHyVerify openAuthPageWithModel:Ui openAuthPageListener:^(NSDictionary * _Nullable resultDic, NSError * _Nullable error) {

           if(error!=nil)
           {
               //拉起授权页失败
               NSLog(@"%@",error.description);
           }
           else
           {
               //拉起授权页成功

               NSLog(@"成功");

           }
       } cancelAuthPageListener:^(NSDictionary * _Nullable resultDic, NSError * _Nullable error) {
           //点击sdk自带返回,关闭,其他方式登录(添加的自定义关闭按钮事件不会触发此回调)
           NSLog(@"====%@",resultDic);
           NSLog(@"----%@",error.description);

       } oneKeyLoginListener:^(NSDictionary * _Nullable resultDic, NSError * _Nullable error) {
           //一键登录点击获取token回调
           //关闭页面,当Ui.manualDismiss = @(YES);时需要手动调用此方法关闭

          // [SVSDKHyVerify hideLoading];
           if (error==nil) {
               //获取token成功,开始调用token置换手机号接口
               NSLog(@"%@",resultDic);


               Ui.manualDismiss = @(YES);
               [SVSDKHyVerify finishLoginVcAnimated:YES Completion:^{
   //                SectionViewController * view = [[SectionViewController alloc] init];
   //                [self presentViewController:view animated:YES completion:^{
   //
   //                }];
               }];
           }
           else
           {
               //获取token失败,可以自定义跳转到其他界面
           }
       }];
}
-(void)svVerifyAuthPageViewDidLoad:(UIViewController *)authVC userInfo:(SVSDKHyProtocolUserInfo *)userInfo
{
    //授权页view
    UIView * authpage = authVC.view;

    //设置背景图
    UIImageView * imageBg = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background"]];
    imageBg.frame = CGRectMake(0, 0, authpage.bounds.size.width, authpage.bounds.size.height);
    [authpage addSubview:imageBg];

    UIButton * backButton = userInfo.backButton;//自带的backButton,在navBar上

    UIButton * loginButton = userInfo.loginButton;
    UIImageView * logoImageView  = userInfo.logoImageView;
    UILabel  * phoneLabel = userInfo.phoneLabel;
    UIButton * checkBox  = userInfo.checkBox;
    UITextView * privacyTextView = userInfo.privacyTextView;
    UILabel  * sloganLabel = userInfo.sloganLabel;

    //将背景图放置最底层
    imageBg.layer.zPosition = loginButton.layer.zPosition-1;

    //后面代码可以自己作处理

    ```
}
相关推荐
冰茶_13 小时前
C#中常见的设计模式
java·开发语言·microsoft·设计模式·微软·c#·命令模式
Sunlight_77714 小时前
第六章 QT基础:6、QT的Qt 时钟编程
开发语言·qt·命令模式
恋猫de小郭16 小时前
腾讯 Kuikly 正式开源,了解一下这个基于 Kotlin 的全平台框架
android·前端·ios
超人强18 小时前
一文搞定App启动流程、时间监测、优化措施
ios
一牛20 小时前
Appkit: 菜单是如何工作的
macos·ios·objective-c
JQShan1 天前
React Native小课堂:箭头函数 vs 普通函数,为什么你的this总迷路?
javascript·react native·ios
画个大饼1 天前
Swift与iOS内存管理机制深度剖析
开发语言·ios·swift
Ya-Jun1 天前
常用第三方库:flutter_boost混合开发
android·flutter·ios
ChoSeitaku2 天前
17.QT-Qt窗口-工具栏|状态栏|浮动窗口|设置停靠位置|设置浮动属性|设置移动属性|拉伸系数|添加控件(C++)
c++·qt·命令模式