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/m.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燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP