【转盘案例-基本框架-创建按钮-按钮布局 Objective-C语言】

一、转盘案例的基本框架

1.我们先来看一下这个转盘啊

通知

新建一个项目,Name:01-大转盘

通知

把素材拷过来,

通知

我们先把背景图片设置一下,

通知

这张图片,可能会很大,跟你的屏幕呢,可能不成正比,这个时候呢,我们应该用拉伸的方式,去做,那么,这个控制器的背景,应该怎么去设置,

画上去,好麻烦,还要重写控制器的View,

一般情况下,如果你想设置控制器的背景为一张图片的话,一个是拉伸,还有一个是平铺,

1)如果你是平铺,那么你应该用backgroundColor ,

2)如果你是拉伸,那么你应该用layer的内容,

drawRect,你想拉伸也行,想平铺也行,但是唯一不好的,就是它要重写一个自定义的一个类,

所以这个里边,我们现在仅仅是拉伸的话,你直接用layer的内容,去设置就可以了,

一般情况下,不是用layer,就是用background,就是用这两个,

因为这两个,一句话都可以搞定啊,

// 设置控制器 view 背景图片(拉伸)

self.view.layer.contents = (__bridge id)[UIImage imageNamed:@“LuckyBackground”].CGImage;

通知

这张控制器View的背景图片,就设置完了,

通知

2.设置完了背景图片,我们接着来做自定义的这个控件了,

通知

这里边,有一个Base Background,这个图片,

通知

这个图片呢,就是最外面的这一圈儿,红色的边儿,

大概就是这一个边儿,

通知

上边还有一个东西,长这个样子,

通知

放处女座、狮子座、放这些文字的一个图片,以后把它盖到上边去,我们把这张图片,叫做“锯齿图片”了,

上边还有一个开始选号的按钮,

通知

实际上,就是一个Button,设置成一张图片,

这个里边呢,大概会有三个控件,一上来,我们这个控件,是要用xib来做,

3.我新建一个类,

通知

继承UIView,我们现在自定义控件,都是继承UIView,

Name:HMRotateView,

通知

复制一下,这个类名,HMRotateView,我要去给它创建一个xib,用这个类名,

通知

来一个xib,Empty的,

通知

创建了一个xib,再去拖一个UIView上来,

通知

给它的size:设置成freedom,

Status Bar:设置成None,

通知

然后,绑定这个类,HMRotateView,

通知

首先啊,它的这个大小,应该是多少,

通知

大小,是不是应该根据你的图片来,

通知

它这个图片呢,大小,是2x的,是(572,572),

通知

(572,572),然后呢,除上2,应该是(286,286),

然后,我们把这个xib的大小,改成(286,286),

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

逆向案例二十——请求头参数加密,某政府农机购置与应用补贴申请办理服务系统,sm3和sm4的加密

网址:农机购置与应用补贴申请办理服务系统 抓包分析,发现请求头参数有加密,表单有加密,返回的数据也是加密的。 请求头Source是固定的,其他的Sign,以及Timsestamp是加密的 请求载荷也是加密的 返回的数据也是加密的。…

ValueError和KeyError: ‘bluegrass’的问题解决

项目场景: 项目相关背景: 问题描述 遇到的问题1: KeyError: ‘bluegrass’ 不能识别某标签 遇到的问题2: xml etree.fromstring(xml_str) ValueError: Unicode strings with encoding declaration are not supported. Please …

Go语言--广播式并发聊天服务器

实现功能 每个客户端上线,服务端可以向其他客户端广播上线信息;发送的消息可以广播给其他在线的客户支持改名支持客户端主动退出支持通过who查找当前在线的用户超时退出 流程 变量 用户结构体 保存用户的管道,用户名以及网络地址信息 typ…

MongoDB自学笔记(一)

一、MongoDB简介 MongoDB是一款基于C开发的文档型数据库。与传统的关系型数据库有所不同,MongoDB面向的是文档,所谓的文档是一种名为BSON (Binary JSON:二进制JSON格式)是非关系数据库当中功能最丰富,最像…

【conftest】和【fixtures】

一、 conftest.py 文件 作用:存放case的前提条件和后置条件配置函数;一般该类函数都会使用fixture装饰(fixture该篇第二点会介绍);使用conftest里面的函数时不需要导入 conftest.py 这个文件。只需将函数名作为变量传入…

Python实现人脸识别

直接上代码: import face_recognition import time from PIL import Image, ImageDraw def faceRecognition(fileName): # 加载图片image face_recognition.load_image_file(fileName)# 人脸定位beginTime time.time()face_locations face_recognition.face_lo…

SEO:6个避免被搜索引擎惩罚的策略-华媒舍

在当今数字时代,搜索引擎成为了绝大多数人获取信息和产品的首选工具。为了在搜索结果中获得良好的排名,许多网站采用了各种优化策略。有些策略可能会适得其反,引发搜索引擎的惩罚。以下是彭博社发稿推广的6个避免被搜索引擎惩罚的策略。 1. 内…

【python】pandas报错:UnicodeDecodeError详细分析,解决方案以及如何避免

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

Spring Security Oauth2源码分析

Spring Security Oauth2源码分析 前言一:客户端OAuth2授权请求的入口1、DefaultOAuth2AuthorizationRequestResolver类OAuth2AuthorizationRequest类authorizationRequestUri 的构建机制redirectUri 3、OAuth2AuthorizationRequestRedirectFilter类 二:O…

IDEA实现SpringBoot项目的自打包自发布自部署

目录 前言 正文 操作背景 自发布 自部署 尾声 🔭 Hi,I’m Pleasure1234🌱 I’m currently learning Vue.js,SpringBoot,Computer Security and so on.👯 I’m studying in University of Nottingham Ningbo China📫 You can reach…

服务器数据恢复—raid5阵列热备盘同步失败导致lun不可用的数据恢复案例

服务器存储数据恢复环境: 华为S5300存储中有一组由16块FC硬盘组建的RAID5磁盘阵列(包含一块热备盘)。 服务器存储故障: 该存储中的RAID5阵列1块硬盘由于未知原因离线,热备盘上线并开始同步数据,数据同步到…

[iOS]内存分区

[iOS]内存分区 文章目录 [iOS]内存分区五大分区栈区堆区全局区常量区代码区验证内存使用注意事项总结 函数栈堆栈溢出栈的作用 参考博客 在iOS中,内存主要分为栈区、堆区、全局区、常量区、代码区五大区域 还记得OC是C的超类 所以C的内存分区也是一样的 iOS系统中&a…

sping总览

一、spring体系 1. spring是什么? 轻量级的开源的J2EE框架。它是一个容器框架,主要实现了ioc,同时又通过aop实现了面向切面编程,它又是一个中间层框架(万能胶)可以起一个连接作用,比如说把myba…

Django任务管理:项目定时执行及简单管理界面

1、用django-admin命令创建一个Django项目 django-admin startproject task_manager 2、进入到项目下用命令创建一个应用 cd task_manager python manage.py startapp tasks 3、进入models.py定义数学模型 第2步得到的只是应用的必要空文件,要开始增加各文件实际…

【java计算机毕设】图书馆书库管理系统java MySQL ssm vue maven项目设计源代码+文档PPT 小组作业

目录 1项目功能 2项目介绍 3项目地址 1项目功能 【java计算机毕设】图书馆书库管理系统java MySQL ssm vue maven项目设计源代码文档PPT 小组作业 2项目介绍 系统功能: 图书馆书库管理系统包括管理员、用户俩种角色。 管理员功能包括个人中心模块用于修改个人信…

y7000p 2020h风扇狂转解决办法

方法1(不推荐) 电源选项限制99% 这两个100%都修改为99%,这样可以限制睿频,但是不推荐,因为会显得有些卡顿注意方法2只在win10下尝试过,win11需要你们自测 方法2(强烈推荐!&…

2.3-基于RNN的语言模型的学习与评价

文章目录 1引言2 RNNLM的代码实现2.1初始化2.2前向和反向传播 3语言模型的一个评价指标-困惑度3.1数据量为一时困惑度的计算3.2数据量为多个的时候困惑度的计算 4 基于PTB数据集的RNNLM的学习的实现 1引言 所有代码位于:https://1drv.ms/f/s!AvF6gzVaw0cNjpx9BAtQYG…

docker-compose部署redis-exporter

一、安装prometheus 1、安装 version: 3.1services:redis-exporter:image: bitnami/redis-exporter:latestcontainer_name: redis-exporterports:- 9121:9121environment:TZ: Asia/Shanghaicommand:- --redis.addrredis://127.0.0.1:6379# - --redis.passwordlabels:org.labe…

如何设计统计量及相关假设检验

一、如何设置H0和H1假设 谁做H0,谁做H1,在统计学的假设检验里是有约定俗成的规定的。即:status quo(默认/现状)是H0,而新观点或试图challenge现状的是H1。H1也叫research hypothesis,所以我们做…

Postman、Apifox、Apipost用哪个?

Postman、Apifox、Apipost都是流行的API接口管理工具,它们各自具有不同的特点和优势,因此哪个更好用取决于具体的使用场景和需求。以下是对这三个工具的比较分析: 一、Postman 特点与优势: 支持多种请求方式:包括GE…