iT邦幫忙

3

[不做怎麼知道系列之Android開發者偷學iOS的奇幻冒險 Day3] - 中離登出 #這麼突然就GameOver的嗎!? #系列暫停 #Android跨iOS好跨嗎?

https://ithelp.ithome.com.tw/upload/images/20200401/20124548EgFY70o8Fs.png

哈囉,我們又見面了,我大概摸了一個禮拜,我把我在 iOS 的目標達成了,但因為我給自己的時間有限,無法把實作上的細節寫成文章,所以這個系列算是暫時到這裡了,我就用這篇來總結一下,我在 iOS 上面學到了什麼、從 Android 跨到 iOS 的路好不好走,那麼我們就繼續看下去。

這一個禮拜我做了什麼?

我把 Android 版-不完美的亮度王 轉成了 iOS 版-不完美的亮度王,因為 iOS 的各種限制 (不允許畫面 overlay、不能在 Today Extension 調整亮度),讓亮度王只能做在 Today Extension (Widget),而且還要跳回到 App 才能調整亮度,使用體驗就不是很好,但也算完成我的夢想了,做出了 AndroidiOS 版,所以我決定投入 iOS 的時間就到這裡了。

Android 版的 不完美的亮度王

偷塞個宣傳,可以到 Google Play 下載哦 XD

iOS 版的 不完美的亮度王

我暫時沒有考慮把 iOS 版上架,一方面是我現在不用 iPhone 了,一方面是我覺得目前應該沒有人需要它,等真的有這個需求再放上去吧(其實是因為對現在的我來說太貴惹 QQ)

iOS 學到了什麼?

  • Swift 的基礎語法
  • iOS 中,調整亮度的方法 (UIScreen.main.brightness)
  • Today Extension (也就是 Widget) Hello World
  • Today ExtensionApp 之間的資料共享 (Multiple Target Data sharing) → 我用 UserDefaults
  • iOSAuto Layout
  • UIKitLabelImageViewButton

Android 跨到 iOS 的路?

其實我覺得最難跨越的檻,是 自己的心,是願意把自己的心打開來,接受新的東西,這才是最難的,一但把心打開,後面都好解決。

講完哲學的部分,我們回來討論真實的門檻 XD

說真的,當你會了其中一邊,要跨到另一邊 不難,對我來說最難的是,怎麼寫出第一個按按鈕把數字加一呈現到畫面上,這包含了

  • 熟悉 IDE
  • 怎麼做 Layout 排版
  • 怎麼對按鈕註冊 Click Listener
  • 怎麼更新畫面

光是要做出這個功能,我花了三天才摸出來,但之後到寫出 Today Extension、改按鈕圖案、加上背景 transition 動畫、跨 Target 傳值,這些功能也才花兩天,因為 AndroidiOS 對於元件的操作概念是相通的,我不需要重新理解每個元件的功能,我只要查出相對應的屬性叫什麼名字,就可以做到我想要的功能。

但要精通 iOS 還是需要花費很多心力,畢竟 AndroidiOS 兩個平台的限制不一樣,有很多是需要做久了才會知道的事情,我這邊只是想要分享我以 Android 開發者為出發點,跨到 iOS 做一個簡單的應用的心得,希望可以引出更多人來分享他們跨領域的心得~

總結

原本我這系列是想要寫下更多在 iOS 的學習心路歷程,還有整理出 Android 對應到 iOS 的專有名詞,但最近我開始懷疑自己,跟我的心靈導師談完,趕快停損,做出對現在的我最好的決定,所以之後有機會跨回 AndroidiOS 再來跟大家分享 ~

以此篇作為本系列的一個斷點,感謝有在看我文章的你們。

我是 RS,這是我的 不做怎麼知道系列 文章,我們 下次見。



尚未有邦友留言

立即登入留言