MacDev 板


LINE

※ 引述《flamelad (flamelad)》之铭言: : 关於你的问题昨天原本想回信,但因为太晚又考虑到我并不是非常熟悉,所以就没回 : 应了。由於你来信询问,那我会尽我绵薄之力提供建议,不对之处还请多见谅。另外这篇 : 我就直接回应到版上占用一些版面,让版友可以指出我不对之处或提供更佳解 :) : ※ 引述《pistols (我不想上报 别寄信啦)》之铭言: : : 请问一下版友 : : 我想设置多个UIButton : : 譬如我从xcode右下角拉了九个UIButton放到ViewControl : : 排列就像电话的按钮 1 2 3...9这样九宫格的排列 : : 我想设计每个按钮的state状态为highlighted时 会产生个别的反应或音效 : : 可是忽然发现UIButton的highlighted的特性跟我想的不太一样 : : 譬如当我按住button1时候 就会有highlighted : : 但是我手指拖移离开button1 移到button2的范围内时 : : button1的highlighted仍然未消失 button2也没有出现highlighted : 就如上次你询问时的解答,假如你只是想要click button 後可以得到被点击後或点住 : 不放的状态,那isHighLighted 就可以得到你想要的结果,否则应该使用其他的-(method) : 或判断。(请务必参考isHighLighted 的description) : 另外就我所了解的是,当你手指未离开屏幕而移动,整体来说只会是某个 Object 的 : a series of events,包括Inside, Outside, DragExit等,而不是手指从button1 拖曳到 : button2 就会trigger button2 的event。 我把我描述的状况贴影片可能清楚些 https://www.youtube.com/watch?v=TzPk4_hKozs
如影片那样 我按第一个按钮之後移到其他按钮 (手指移动过程都没离开萤幕) 就只有第一个按钮有反应 移动到其他按钮都没反应 而且在我手没离开萤幕前都只是对第一个按钮控制而已 我希望每个按钮在我移到他门位置上时候会亮起来 并且在离开的时候就会关闭(不会有离开的时候仍然亮的情形) : : 想请问版友 : : 我如果想让每一个button只要是手指有接触到该按钮的范围内就会有highlighted反应 : : 而一离开或是拖移超出范围马上就不会有highlighted : : 我该如何设置呢? : 这并不难,请参考UIButton继承的UIControl中的一些method,主要是需要改变按下 : button的default UIControlEvent。 : : 譬如像上面说的例子 : : 当我手指离开button1范围 移到button2范围的时候 : : 如何让button1的highlighted马上消失 而变成button2的highlighted跑出来 : 这例子若是手指并不离开屏幕,则与上一段你所希望的并不相同,请见第一段的解释 : 。若你想有手指不离开屏幕而触发多个 Objects,应该使用Gesture Recognizer或是版友 : 所提到的UITouch中的-(method)。 请问这是指我不用拉那5个UIButton 而是拉5个UIView取代原本Button位置 再各自拉Gesture Recognizer进去吗? : : 是要拉每个按钮的IBOutlet到interface底下 增加什麽判定的属性吗? : : 我是有试过拉IBAction 然後用touch drag outside或是drag inside等等 : : 但都不会跑出我所说的那样 : : 而且 我的功能是用按钮的state去做反应的 : : 希望版友可帮忙解答一下 : : 非常感谢! : 请参考UIControl。另外若有拉IBAction,每当你触发了版面上的某个Object event时 : ,则IBAction中常见的sender就是被触发Object的instance,你可以借由这个sender去改 : 变行为。 : 以上,大致上是我的理解,希望有帮助:) : Edit: : 最後一段有些谬误的地方,不好意思,赶吃饭:p : 谬误: : 1. 在button中的sender并不该是改变event,而是增减一些event才对。 : 2. 若是要修改该button的event,一般也不会在该button中实现,而是如你 : 所说,另外declare一个IBOutlet,然後去增加该button的event。 哈 我是刚接触写程式的新生 很多问题都是实机模拟之後 才觉得哪边怪怪的 晚上有空我再练习看看 谢谢版友们回覆! --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.239.240.53
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/MacDev/M.1407661397.A.B15.html
1F:→ flamelad: Gesture Recognizer是个solution, darktt版友已经给出很 08/10 17:15
2F:→ flamelad: 详细的做法,我相信你先去了解Gesture Recognizer後,就 08/10 17:16
3F:→ flamelad: 能融会贯通了。另外稍微解释一下,Gesture Recognizer也 08/10 17:17
4F:→ flamelad: 是个object,就如我第一段所说,所以应该是Gesture 08/10 17:19
5F:→ flamelad: Recognizer拉一个就行了,然後使用这个Object去处理你要 08/10 17:19
6F:→ flamelad: 的功能 08/10 17:19
7F:推 charlesdc: 建议先去了解触控事件传递的规则 你就会知道要从哪下手 08/10 17:58
8F:→ pistols: 感谢!!这几天我再研究一下手势的功能 08/10 22:08







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP