xcode5 ios开发 屏幕上多个按钮,点击后创建按钮连接线

屏幕上有5个按钮,希望实现:点击两个按钮显示一条有颜色的连接线,然后点第三个按钮,继续创建连接线。点击过的按钮字体颜色发生变化,且不能重复连接,当五个按钮均被连接后,弹出... 屏幕上有5个按钮,希望实现:点击两个按钮显示一条有颜色的连接线,然后点第三个按钮,继续创建连接线。点击过的按钮字体颜色发生变化,且不能重复连接,当五个按钮均被连接后,弹出消息窗口,并附带“当前操作返回”按钮,求助各位了。 展开
 我来答
Reyzhang
2014-03-30 · TA获得超过1111个赞
知道小有建树答主
回答量:805
采纳率:85%
帮助的人:659万
展开全部
思路是:
你应该维护一个栈。这个栈的作用是存储所有点过的按钮tag,当这个栈没有记录时说明还没有进行任何操作。当这个栈有数据时,可以知道哪一个按钮是最后一个被压入栈的。这样也就知道该是哪两个按钮之间建立连线。存储tag的原因是,可以根据这个tag找到按钮本身
UIButton *btn=(UIButton *)[self.view viewWithTag:tag];
找到按钮就可以知道这个按钮的位置
btn.frame.origin.x , btn.frame.origin.y

问题的难点是在两个按钮连线的起始点与结束点。首先起始点与结束点肯定是在这两个按钮上。
至于画线就简单了,知道了两个点,在UIView 的drawRect 中就可以通过Core garphics framework来绘制。
CGContextMoveToPoint(context,firstPoint);
CGContextAddLineToPoint(context,lastPoint);
CGContextSetStorkColorWithColor(context,[UIColor redColor].CGColor);
CGContextDrawPath()
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式