秒验 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;

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

    ```
}
相关推荐
茶底世界之下5 天前
为什么预览、录制、离线导出不能共享同一个背压策略?
ios·swift
2501_916007475 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
2501_916008895 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview
2501_915909065 天前
移动端开发工具链怎么组合比较好,iOS、Android、跨端三套配置方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
2501_916008895 天前
怎么用 Godot 导出 iOS 应用并上架 App Store?签名字段该填什么?
android·ios·小程序·https·uni-app·iphone·webview
2501_915918416 天前
iOS编程用什么软件好?主流工具Xcode、AppCode、CodeRunner与新兴快蝎对比
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
终端安全笔记6 天前
iOS 27 之后「策略空转」:设备升级不报错,但旧策略不再管它
android·网络·安全·ios·智能手机
9765033356 天前
iOS 上架 4.3a 被拒【uniapp专讲】
flutter·ios·objective-c·uniapp·swift
黑化旺仔7 天前
【OC】KVO
macos·ios·objective-c·cocoa
HouWan7 天前
SwiftUI 小技巧:如何读取 SwiftUI Font 的详细信息
ios·swiftui·apple