中国优质的IT技术网站
专业IT技术创作平台
IT职业在线教育平台
基于一键登录的拉起授权页面功能,如果想要在我们的授权页面中添加自定义组件,例如使用其他方式登录的按钮,来实现其他方式登录功能,为用户呈现更多选择登录的方式。本文介绍如何在一键登录授权界面中实现添加自定义控件功能,实现方式如下:
//自定义授权页面 -(void)setupAuthPageCustomStyle:(UIViewController *)authVC userInfo:(SVSDKHyProtocolUserInfo *)userInfo { //授权页view UIView * authPageView = authVC.view; //中间可以对原有授权页上的按钮文字等作自定义操作 ``` //***添加自定义控件**** // 自定义返回按钮 UIButton *customBackButton = [UIButton buttonWithType:UIButtonTypeCustom]; [customBackButton setImage:[UIImage imageNamed:@"fh"] forState:UIControlStateNormal]; [customBackButton setTitle:@"返回" forState:UIControlStateNormal]; [customBackButton setTitleColor:[UIColor colorWithRed:35 /255.0 green:35/255.0 blue:38 /255.0 alpha:1/1.0] forState:UIControlStateNormal]; customBackButton.titleLabel.font = [UIFont fontWithName:@"PingFangSC-Regular" size:18]; [customBackButton addTarget:self.target action:@selector(customBackAction:) forControlEvents:UIControlEventTouchUpInside]; [authPageView addSubview:customBackButton]; UIView *bottomView = [[UIView alloc] init]; [authPageView addSubview:bottomView]; UILabel *mLbl = [[UILabel alloc] init]; mLbl.textAlignment = NSTextAlignmentCenter; mLbl.font = [UIFont fontWithName:@"PingFangSC-Regular" size:13]; mLbl.textColor = [UIColor colorWithRed:184 /255.0 green:184/255.0 blue:188 /255.0 alpha:1/1.0]; mLbl.text = @"其他方式登录"; [mLbl sizeToFit]; [bottomView addSubview:mLbl]; UIButton *wxBtn = [[UIButton alloc] init]; [wxBtn setBackgroundImage:[UIImage imageNamed:@"wc"] forState:UIControlStateNormal]; [wxBtn addTarget:self.target action:@selector(weixinLoginAction:) forControlEvents:UIControlEventTouchUpInside]; [bottomView addSubview:wxBtn]; UIButton *zhBtn = [[UIButton alloc] init]; [zhBtn setBackgroundImage:[UIImage imageNamed:@"zh"] forState:UIControlStateNormal]; [zhBtn addTarget:self.target action:@selector(usernameLoginAction:) forControlEvents:UIControlEventTouchUpInside]; [bottomView addSubview:zhBtn]; //布局(可以进行竖屏和横屏的布局):自定义控件和授权页基本控件可以放一起统一布局即可 ``` //自定义控件布局(这里使用的是第三方布局控件Masonry) [customBackButton mas_remakeConstraints:^(MASConstraintMaker *make) { make.width.height.mas_equalTo(50); make.left.mas_equalTo(15); make.top.mas_equalTo(15); }]; // bottomView [bottomView mas_remakeConstraints:^(MASConstraintMaker *make) { make.bottom.mas_equalTo(privacyTextView.mas_top); make.centerX.mas_equalTo(0); make.width.mas_equalTo(SVD_ScreenWidth); make.height.mas_equalTo(70+mLbl.bounds.size.height); }]; [mLbl mas_remakeConstraints:^(MASConstraintMaker *make) { make.bottom.mas_equalTo(wxBtn.mas_top).offset(-10); make.centerX.mas_equalTo(0); }]; [wxBtn mas_remakeConstraints:^(MASConstraintMaker *make) { make.bottom.mas_equalTo(-10); make.centerX.mas_equalTo(-50); make.width.height.mas_equalTo(48); }]; [zhBtn mas_remakeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(wxBtn); make.centerX.mas_equalTo(50); make.width.height.mas_equalTo(48); }]; }
微信扫码分享