iOS端授权页添加自定义按钮

如何添加自定义控件

基于一键登录的拉起授权页面功能,如果想要在我们的授权页面中添加自定义组件,例如使用其他方式登录的按钮,来实现其他方式登录功能,为用户呈现更多选择登录的方式。本文介绍如何在一键登录授权界面中实现添加自定义控件功能,实现方式如下:

//自定义授权页面
-(void)setupAuthPageCustomStyle:(UIViewController *)authVC userInfo:(SVSDKHyProtocolUserInfo *)userInfo
{//授权页viewUIView * 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);}];}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/38171.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习之监督学习

整理一下机器学习中监督学习相关内容,争取梳理出一条易于理解和掌握的脉络。下面会有很多相关参考博客和文章,先放到一起,最后再做个整体的梳理。持续更新中。。。。。。 监督学习作为机器学习的核心分支,其理论体系与实践应用都…

C# 警告 warning MSB3884: 无法找到规则集文件“MinimumRecommendedRules.ruleset”

警告 warning MSB3884: 无法找到规则集文件“MinimumRecommendedRules.ruleset” C:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Current\Bin\amd64\Microsoft.CSharp.CurrentVersion.targets(129,9): warning MSB3884: 无法找到规则集文件“MinimumRe…

竞赛选题 python的搜索引擎系统设计与实现

0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 python的搜索引擎系统设计与实现 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分工作量:5分创新点:3分 该项目较为新颖&#xff…

正则表达式在Java中的应用与实例

正则表达式在Java中的应用与实例 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 正则表达式是一种强大的工具,用于模式匹配和字符串处理。在Java中…

武汉星起航:成功挂牌上股交,引领跨境电商行业进入全新发展阶段

2023年10月30日,武汉星起航电子商务有限公司在上海股权托管交易中心成功挂牌展示,这一里程碑式的事件标志着武汉星起航正式登陆资本市场,开启了公司发展的新篇章。作为亚马逊跨境电商领域的领军企业之一,武汉星起航此次挂牌不仅是…

文件操作详解(C语言)

1.为什么要用到文件?怎样数据才能持久化? 保存在内存中的数不安全(一次断电,忘记保存,不用了还给系统) 持久化:保存在硬盘上(放在文件中) 什么是文件?文件…

Hadoop-08-HDFS集群 基础知识 命令行上机实操 hadoop fs 分布式文件系统 读写原理 读流程与写流程 基本语法上传下载拷贝移动文件

章节内容 上一节完成: HDFS的简介内容HDFS基础原理HDFS读文件流程HDFS写文件流程 背景介绍 这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。 之前已经在 VM 虚拟机上搭建过一次,但是没留下…

SpringSecurity的执行原理

SpringSecurity的执行原理:当我们服务端接收到请求后,首先通过DelegatingFilterProxy代理对象交互,转发给springsecurity的执行链,由于他自带的执行链有16条,我们将不用的过滤器进行了排除,同时加入了我们自…

如何保护应用?可快速部署的WAF服务器分享

Web应用攻击是安全事件和数据泄露的主要原因。相关统计表明,超过四分之三的网络犯罪直指应用及其漏洞。为保护数量日益增长的应用安全,Web应用防火墙(WAF)因此而生。本文则聚焦于WAF服务器,了解它的性能与具体的实践应用。   新加坡网络安全…

《单片机》期末考试复习-学习笔记总结

题型 问答题(15分)编程题(65分)编程题1(20分)编程题2(45分)设计题(20分)一、问答题 1.1.单片机概念和特点 1.2. 51单片机的中断结构 1.3.主从式多机通讯的概念及其工作原理 多机通信是指两台以上计算机之间的数据传输,主从式多机通信是多机通信系统中最简单的一种,…

PHP电商系统开发指南最佳实践

电子商务系统开发的最佳实践包括:数据库设计:选择适合关系型数据库,优化数据结构,考虑表分区;安全:加密数据,防止 sql 注入,处理会话管理;用户界面:遵循 ux 原…

vue3长列表优化,使用vue-virtual-scroller实现直播间弹幕列表虚拟滚动效果

使用的组件库是:https://github.com/Akryum/vue-virtual-scroller 官方文档:vue-virtual-scroller 安装依赖 npm install --save vue-virtual-scrollernextpnpm install --save vue-virtual-scrollernextyarn add vue-virtual-scrollernext 组件导入…

如何用文章改写ai软件进行改写?5个软件教你快速进行修改文章

如何用文章改写ai软件进行改写?5个软件教你快速进行修改文章 使用AI改写软件可以帮助你快速重写文章,使其更加流畅、符合要求或避免重复。以下是五款优质的AI改写软件,它们能够帮助你快速进行文章修改: 聪明灵犀 这是一款非常简…

数据结构_1.0

一、数据结构概述 1.1 概念 在计算机科学中,数据结构是一种数据组织、管理和存储的格式 。它是相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技…

【开源合规】开源许可证基础知识与风险场景引入

文章目录 什么是开源许可证(License)?开源许可证有什么用?开源许可证分类开源许可证分类及描述公共代码 (Public Domain)CC0无License宽松型许可证 (Permissive)MITApache 2.0BSD弱互惠型许可证 (Weak Copyleft)LGPLMPLEPL互惠型许可证 (Reciprocal)GPLEUPL强互惠许可证 (Str…

读-改-写操作

1 什么是读-改-写操作 “读-改-写”(Read-Modify-Write,简称RMW)是一种常见的操作模式,它通常用于需要更新数据的场景。 这个模式包含三个基本步骤: 1.读(Read):首先读取当前的数据…

从0开始学习pyspark--pyspark的数据分析方式[第2节]

PySpark是Apache Spark的Python API,能够在分布式计算环境中处理大规模数据。本文将详细介绍PySpark中不同的数据分析方式,包括它们的使用场景、操作解释以及示例代码。 1. RDD(Resilient Distributed Dataset)API 概述 RDD是Sp…

Linux——查找文件-find(详细)

查找文件-find 作用 - 按照文件名、大小、时间、权限、类型、所属者、所属组来搜索文件 格式 find 查找路径 查找条件 具体条件 操作 注意 - find命令默认的操作是print输出 - find是检索文件的,grep是过滤文件中字符串 参数 参数 …

简述Vue中的数据双向绑定原理

Vue中的数据双向绑定原理是Vue框架的核心特性之一,它通过数据劫持结合发布者-订阅者模式来实现。下面将详细阐述Vue中数据双向绑定的原理,并尽量按照清晰的结构进行归纳: 一、数据劫持 使用Object.defineProperty(): Vue在组件…

Mojo模板引擎:释放Web开发的无限潜能

🚀 Mojo模板引擎:释放Web开发的无限潜能 Mojolicious是一个基于Perl的现代化、高性能的Web开发框架,它内置了一个功能强大的模板引擎,专门用于快速构建Web应用程序。Mojo的模板引擎不仅简洁易用,而且具备多种高级特性…