【触摸案例-手势解锁案例-连线到按钮 Objective-C语言】

2024-05-08 17:04

本文主要是介绍【触摸案例-手势解锁案例-连线到按钮 Objective-C语言】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、接下来,我们接着来说这个,连线的问题啊,

通知

1.连线的问题啊,也就是说,我现在点击一个按钮,

通知

在移动到下一个按钮的时候,在两个按钮中间,在两个按钮都亮起来的时候呢,我们肯定是让它去画一条线的,那么,

1)首先,如果我现在从第一个按钮,连到第二个按钮,那么,这条线,应该从哪儿画到哪儿,对,第一个的中心,连到第二个的中心,就可以了,

也就是说,只要我让它高亮的按钮,每一次,我都让它的中心之间,去进行一条连线,实际上,就可以了,

这是大体的一个思路啊,好,然后呢,那接下来,我们就应该去连线,

2.好,那么,这个时候呢,我们说,连线,你要画线的时候,肯定是需要去写drawRect:的,

通知

这是一定的,

通知

在这个地方,去画线,

// 画线

- (void)drawRect:(CGRect rect){

}

1)那么,首先,我要画线,我要从谁,画到谁,我要从某一个,比如说,我要从第一个按钮,画到第二个按钮,

通知

2)那么,这个按钮,怎么着去取,判断它们的状态?选中的状态,开始画,那就是说,在这个里边,你的意思是说,在这个里边,去for循环一下,

通知

把所有的按钮都遍历一遍,然后,如果是高亮状态的话,就挨个儿去连线,是吗?

通知

这个里边可是有顺序的问题的啊,你想一下,我现在一、二、三、从左往右连线,

通知

应该是在这块儿有一根儿(一、二、之间)、这块儿有一根儿(二、三之间),应该是这个样子的,那如果我现在一、二、再连到这儿,

通知

再连到这儿的话,

通知

那这根儿线啊,应该是,如果我先走这儿,一、二、三、四的话,

通知

那么,这根儿线,应该是这样画的,

通知

那如果照你说,遍历的话,我我现在一走到这儿(第二行第一个),然后去遍历的时候,那第一个按钮,遍历是它,第二个是这儿,那第三个,我就跑到这儿来了,

通知

第四个,就跑到这儿了,

通知

所以,肯定是不能这么干的,那怎么办,它肯定是有顺序的,对,我要再搞一个数组,首先,我要搞数组干什么,我所有的,需要,只要它一高亮,

通知

那就意味着,这个按钮,肯定是需要连线的,所以呢,我不管你在touchesBegan:也好,还是在touchesMoved:也好,只要变成了高亮,

通知

我就给你放到另外一个数组里边,然后,这个时候,肯定是有顺序的吗,因为你高亮起来,肯定都是有顺序的,一、二、三、四,

通知

那么这个时候,我挨个儿的去添加到某一个有序的数组里边去,然后,再遍历这个数组,在每一个btn之间再去连线,就可以了,

二、连线

1.所以呢,我们在外面,还需要再搞一个数组,叫做lineBtns吧,

通知

这个是// 所有需要连线的按钮

通知

好,接下来啊,这个数组有了,有了以后呢,我们需要去初始化一下,然后呢,在这块儿,写一个lineBtns,

通知

if(!_lineBtns){

statements

}

通知

然后,return这个lineBtns,

通知

然后,在这个里边,写一个_lineBtns = [NSMutableArr

这篇关于【触摸案例-手势解锁案例-连线到按钮 Objective-C语言】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/970905

相关文章

C语言中联合体union的使用

本文编辑整理自: http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=179471 一、前言 “联合体”(union)与“结构体”(struct)有一些相似之处。但两者有本质上的不同。在结构体中,各成员有各自的内存空间, 一个结构变量的总长度是各成员长度之和。而在“联合”中,各成员共享一段内存空间, 一个联合变量

大语言模型(LLMs)能够进行推理和规划吗?

大语言模型(LLMs),基本上是经过强化训练的 n-gram 模型,它们在网络规模的语言语料库(实际上,可以说是我们文明的知识库)上进行了训练,展现出了一种超乎预期的语言行为,引发了我们的广泛关注。从训练和操作的角度来看,LLMs 可以被认为是一种巨大的、非真实的记忆库,相当于为我们所有人提供了一个外部的系统 1(见图 1)。然而,它们表面上的多功能性让许多研究者好奇,这些模型是否也能在通常需要系

人工和AI大语言模型成本对比 ai语音模型

这里既有AI,又有生活大道理,无数渺小的思考填满了一生。 上一专题搭建了一套GMM-HMM系统,来识别连续0123456789的英文语音。 但若不是仅针对数字,而是所有普通词汇,可能达到十几万个词,解码过程将非常复杂,识别结果组合太多,识别结果不会理想。因此只有声学模型是完全不够的,需要引入语言模型来约束识别结果。让“今天天气很好”的概率高于“今天天汽很好”的概率,得到声学模型概率高,又符合表达

C语言 将“China”译成密码

将“China”译成密码,密码规律是:用原来的字母后面的第4个字母代替原来的字母。例如,字母“A”后面的第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。编译程序用付赋初值的方法使c1,c2,c3,c4,c5这五个变量的值分别为“C”,“h”,“i”,“n”,“a”,经过运算,使c1,c2,c3,c4,c5分别变成“G”,“l”,“m”,“r”,“e”。分别用put

四川蔚澜时代电子商务有限公司解锁抖音电商新篇章

在数字经济的浪潮中,电子商务正以前所未有的速度改变着我们的生活。而在这个风起云涌的时代,四川蔚澜时代电子商务有限公司凭借其独特的战略眼光和专业的服务能力,成为了抖音电商领域的新领航者,引领着四川乃至全国的电商行业迈向新的高度。 蔚澜时代,这个在四川这片土地上孕育而生的电商新星,自创立之初就明确了其发展方向——专注于抖音电商服务。随着抖音平台的迅速崛起,其巨大的流量红利和用户粘性为电商行业带来了前

C语言入门系列:探秘二级指针与多级指针的奇妙世界

文章目录 一,指针的回忆杀1,指针的概念2,指针的声明和赋值3,指针的使用3.1 直接给指针变量赋值3.2 通过*运算符读写指针指向的内存3.2.1 读3.2.2 写 二,二级指针详解1,定义2,示例说明3,二级指针与一级指针、普通变量的关系3.1,与一级指针的关系3.2,与普通变量的关系,示例说明 4,二级指针的常见用途5,二级指针扩展到多级指针 小结 C语言的学习之旅中,二级

FastAdmin/bootstrapTable 表格中生成的按钮设置成文字

公司有个系统后台框架用的是FastAdmin,后台表格的操作栏按钮只有图标,想要设置成文字。 查资料后发现其实很简单,主需要新增“text”属性即可,如下 buttons: [{name: 'acceptcompany',title: '复核企业',text:'复核企业',classname: 'btn btn-xs btn-primary btn-dialog',icon: 'fa fa-pe

【LinuxC语言】select轮询

文章目录 前言select函数详解selectfd_set类型一个小问题select函数使用步骤改进服务器代码select服务器示例代码 总结 前言 在Linux C语言编程中,我们经常需要处理多个I/O操作。然而,如果我们为每个I/O操作创建一个线程,那么当I/O操作数量增加时,线程管理将变得复杂且效率低下。这就是我们需要select轮询的地方。select是一种高效的I/

拓扑排序——C语言

拓扑排序(Topological Sorting)是一种用于有向无环图(DAG)的排序算法,其输出是图中所有顶点的线性排序,使得对于每条有向边 (u, v),顶点 u 在 v 之前出现。拓扑排序确定了项目网络图中的起始事件和终止事件,也就是顶点的执行顺序。         因为是有向无环图,所以拓扑排序的作用其实就是把先发生的排序在前面,后发生的排序到后面。 例如现在我们有一个

六西格玛培训公司:解锁成功之门,让企业与个人共赴“嗨”途

在竞争激烈的21世纪,六西格玛培训公司手握一把神奇的钥匙,帮助企业及个人轻松开启成功的大门。 对企业来说: 产品质量飞跃:不再是偶尔的精品,而是每个产品都如同精雕细琢的艺术品,吸引无数顾客争相购买。 工作流程优化:六西格玛培训如同精准的剪刀,剪去冗余,让工作流程更加顺畅高效。 客户满意度飙升:深谙客户需求的六西格玛,帮助企业精准把握市场脉搏,让每位客户都感受到宾至如归的满意。 战略转型游刃有