iT邦幫忙

2021 iThome 鐵人賽

DAY 9
0
Mobile Development

轉職App開發打怪雜記系列 第 9

倒計時按鈕文字閃爍問題

  • 分享至 

  • xImage
  •  

緣由:

UIUX提出一個新功能,要在按鈕上加上倒數秒數,這個功能算是常見,但開始動手作完了之後,問題來了@@
按鈕居然在閃爍,不是我眼花,這按鈕在活潑什麼啦(苦笑),雖然當作是一個效果也是不錯吧(?),但看起來它不在大眾審美的範疇裡,只好滅了他~

解決方法:

如此活靈活現的按鈕,為了要讓他安分一點,所以查找了很多資料,發現原來還是有很多人有跟我一樣的問題,在踩坑的路上我們總是不孤單的?,看了很多解釋,大致上的說法就是UIButton元件的System 樣式會預設按鈕動畫效果會暗一下,因為倒計時秒數的關係,會一直去設定文字,造成看起來像是按鈕在閃爍的效果(bug?),所以既然知道是樣式效果,那拋棄這個樣式理應就可以解決問題,但網路的大神居然也提出了另一種特別的解決方式,親自試過,有效!而且改動很小!方法如下:

方法一:先設定UIButton的titleLabel的文字,再設定setTitle(對!就這樣,而且一定要接著設定才會有效)

countdownBtn.titleLabel?.text = “\(newValue) 秒後才能重新發送”
countdownBtn.setTitle(“\(newValue) 秒後才能重新發送”, for: .normal)

方法二:將UIButton的UIButtonType.System改為UIButtonType.Custom

大家可以都試試看,看哪一種你覺得比較完美~~


上一篇
使用storyboard實現代理功能
下一篇
防止自動鎖屏
系列文
轉職App開發打怪雜記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言