1. 程式人生 > >酷課堂iOS交流群,聚集了一群熱愛技術、有趣、有料,平均Q齡在10年以上的“老司機”,他們遍佈在全國

酷課堂iOS交流群,聚集了一群熱愛技術、有趣、有料,平均Q齡在10年以上的“老司機”,他們遍佈在全國

新書即將上市:

這兩天收到出版社的樣書,預計這兩週將陸續開始上架,感興趣的小夥伴,到時可在天貓、噹噹、京東搜尋“李發展”即可找到。

                           

本書內容簡介和適合人群:

本書包含Swift 4.0語言、Cocoa Touch、檢視控制器、控制元件、表格、網路、地圖、音訊、視訊、動畫、觸控、手勢、故事板、CoreData、效能測試、機器學習、增強現實、加密解密等眾多功能模組。這些內容是iOS開發必知必會的內容,需要讀者重點掌握。

讀者物件:通過對本書的學習,讀者可以基本建立起iOS 11技術的思想框架,並且對iOS 11開發的過程有一個全面的瞭解。因此本書適合iOS開發初學者、iOS程式設計師、iPhone開發人員、iPad開發人員的學習。

我們是一個什麼樣的組織:

酷課堂iOS交流群,聚集了一群熱愛技術、有趣、有料,平均Q齡在10年以上的“老司機”,他們遍佈在全國/球各地,有知名企業iOS工程師、高校大學生、自由職業者……如果你也是這樣的人,歡迎通過文末的聯絡方式,加入我們一起暢聊iOS技術及周邊。

“很乾”

“很佛系”

每晚11點後熄燈(禁言),只聊技術,幾乎不閒聊。

IT從業者自學成功的不少,但從入門到放棄的人更多。一個人走的快,一群人走的遠,希望你會是堅持到最後的那一波,希望我們可以一起相伴走的更遠一些。以下是我們群的日常畫風,大家感受一下,

加入組織之前是這樣的:

這是為啥啊 ???

被卡住的感覺真不太好!!!

這個swift專案外包寫的,我來維護,真心醉了啊……

有毒

Clean了,但是沒啥用?

我把快取檔案刪了,又pod install。結果還是一樣的。

就是這個東東,我網上查了,弄了兩遍了,還是不行。現在還在一遍遍試,一點頭緒都沒有。

碰到個問題,網上找到解決方案,但是不會用,誰能幫我看看啊,線上等,急!!!

(此刻寶寶心裡的苦,你們懂嗎?)

 

 

加入組織之後是這樣的:

好了

解決了

厲害了@群主,效果實現了。

哦,我明白了。

搞定,謝謝群主。

原來是這樣,多謝各位老鐵了!

我找到了解決方法,但是沒有看懂。能一起看一下嗎?@群主

(就是這樣“手把手”帶著學,幫助你快速入門)

 

本期群問答精華整理如下:

關鍵詞:

抖音介面  國慶擼出個微信 學英語  iOS12

以下內容由@客服妹子爬樓整理,希望小夥伴的這些提問,對你有幫助/啟發,精選在此,喜歡請收藏,給答題的大佬們點贊!

感謝appman、賴著、風、回憶滿滿、神奇的海螺、김위청、MissLIBRA、King、김위청、強迫依存 、zhu、Warrior 、Jack、Joseph等大神們的分享和解答,特送出價值68元的新版【互動課程全集】30天體驗名額一份.

這套課程集合:iOS移動開發、PS平面設計、Excel辦公軟體等7門課程。

我們希望用這樣“手把手”帶著學的方式,讓更多人可以快速入門新領域。

請隨時私信客服妹子領取。今後每月我們都將會有送書、送課、送禮物等等福利,敬請期待~

1、請問MapView自定義大頭針,可以載入gif圖片麼?
答題大佬:群主、appman

問題貢獻者:風

可以的,你在viewForAnnotation代理方法中,給annotationView新增子檢視,在子檢視中播放gif圖片。

好的,我先試試,不行的話我再打擾你
厲害了@群主,效果實現了。

還有個問題想請教你,我第一次進入的時候不會播放,切換到其它TabBarItem後再切換回來,又可以播放了,不知啥原因??? @群主

這個專案使用的OC 

這個是swift

建議可以打斷點跟蹤下資料。

2、給新來的同學分享一波乾貨~

(英語沒過6級的這位同學,放學不要走)

蘋果官方設計規範:

https://developer.apple.com/ios/human-interface-guidelines/ 

https://github.com/geeeeeeeeek/git-recipes 

不錯,就是看的有點費勁。

考驗英文的時刻到了。

英文沒6級,看著確實有點費勁。

3、在不考慮蘋果稽核的情況下,swift可以實現來去電通話錄音嗎?
答題大佬:群主

問題貢獻者:神奇的海螺

iOS由於系統本身的限制,出於不收集使用者資料,起到保護隱私的安全考慮,所以不提供,也無法實現在通話期間直接的支援錄音。

所以iOS中的通話錄音,都是第三方,通過網路或網路+運營商的方式,實現通話錄音的。

參考:https://crifan.github.io/mobile_app_summary/website/app_dev_summary/phone_call_record/ios_record.html 

4、我用的是swift4,發現找不到swift_complier,我該去哪兒橋接呢?
答題大佬:MissLIBRA

問題貢獻者:MissLIBRA

我開發的app準備整合高德SDK,結果根據官方開發者手冊,第一步是引入標頭檔案。官方文件是swift2.2,我用的是4,發現找不到swift_complier,

我該去哪兒橋接呢?

我是用pod安裝的sdk,還是我這樣直接引用一下就好?

哦哦,好了,直接新建個oc類讓xcode自動生成oc-swift橋檔案。在橋檔案中匯入高德sdk就好了,最後還可以把oc類刪掉 。

5、為什麼app,不同的裝置有的閃退,有的不閃退,好奇怪?
答題大佬:群主

問題貢獻者:King
不一定是裝置的原因。裝置之間一般解析度不同,除非根據不同解析度載入不同資源,而資源又不存在。

6、我想問我的app中儲存的會員資訊,隔一段時間會清零,然後讓使用者重新登陸,這是怎麼回事?(會員資訊是用UserDefaults儲存的)

答題大佬:群主、appleMan

問題貢獻者:김위청
使用UserDefaults 儲存資訊有沒有執行synchronize同步方法?
UserDefaults儲存的資料偶爾有可能會丟失,一般是系統重新啟動之後。

為什麼不用keychain儲存呢

我學的時候是用userdefaults的。

哦,那就再研究下keychain吧。

但是已經上架了,就沒辦法去做修改了,只有通過版本迭代了。

現在就是一個會員,一直這樣,我也找不出問題,我感覺他的儲存的userdefualt,隔斷時間就會沒有。

像群主說的那樣,UserDefaults儲存的資料偶爾有可能會丟失,一般是系統重新啟動之後。還有幾種可能你排查一下:

1、跟系統版本有關,ios10+可能會出現此問題的發生;

2、有可能你儲存的資料量過大導致的;

3、有可能是本地做了清除操作。還有就是儲存資料的時候,有沒有及時的同步資料synchronize;
4、另外教程裡也有synchronize的相關內容,建議你可以瞭解一下,希望對你有幫助。

7、請問MapView可以實現自定義地圖背景麼?或者自定義地圖背景顏色??
答題大佬:群主

問題貢獻者:風
應該是可以的,

請參考這個第三方框架https://www.jianshu.com/p/3ed48597ee00 

8、這是在5s上適配UI Label自適應大小,有沒有合適的處理方式呢??目前cell的行高值固定的為79
答題大佬:群主

問題貢獻者:風

好的,使用現有的適配方式遇到了什麼問題?是截圖中文字的頭部和底部沒有完全顯示嗎?

是的,在5s上沒有完全顯示

label的高度太小了,重新調整一下label的高度,然後再自動更新一下上、下兩個約束

調高還是調一個固定的高度麼??

在屬性設定面板給高度設定一個值,此時Bottom Space to和Top Space to會出現×××警告,然後再調整這兩個約束,使警告消失,或者刪除這兩個約束,然後再重新新增。

(就是這樣手把手,帶你學iOS開發)

 

9、請問xcode9.4中解決git衝突後,pull按鈕還是灰色為什麼不能點選,求解?
答題大佬:群主

問題貢獻者:葉舟

請確認是否真正解決了git衝突。另外請嘗試使用github desktop客戶端進行git管理,這樣出現的問題相對少些。

 

10、求,Swift怎麼import三方庫的子模組?
答題大佬:群主

問題貢獻者:強迫依存 

群主:
一般是下載第三方庫的整個專案,然後將所需的部分匯入到自己的專案中。還有的第三方庫會將子模組獨立出來,比如Alarmofire就有JsonToObject、Reachability等子模組。

強迫依存:
嗯,請問這種subspec在swift中能匯入嗎?pod 沒問題

群主:
將Mikoto/Encrypt修改為Mikoto.Encrypt試試,Swift匯入規則:
import [module]
import [module].[submodule]
import [import kind] [module].[symbol name]

強迫依存:

使用import Mikoto能把Encrypt模組的oc檔案導進來

但是下面的Security.swift不行

哦哦,找到原因了,原來是Security沒有標記為public 。

 

 

11、請問一下,純swift專案,真機和模擬器都能執行,打包的時候報錯,說找不到庫,是怎麼回事啊?有沒有坑友遇見過呀(坑友指同時入坑iOS開發的好×××)
答題大佬:群主

問題貢獻者:zhu

這些庫都是用pod匯入的,把他們順序換了,也是找不到pod匯入的庫。

群主:
參考這篇文章:

https://stackoverflow.com/questions/32673866/cocoapods-cannot-load-underlying-module-for-x 

zhu:

謝謝群主,見效了

12、這個問題有遇到的嗎?檢查了證書,貌似是沒有問題的。
答題大佬:群主

問題貢獻者:appleMan

群主:
參考這個https://www.jianshu.com/p/601f00b2d312 

appleMan:

貌似是升到ios12正式版後出現的問題是比較多的

Joseph:
還是等等再升吧!

Warrior:
對了,你用過12的捷徑沒
語音輸入,不能直接輸入高德里面

appleMan:
捷徑之前是workflow,純英文的挺好用的。
現在改為中文的開放出來額了,用著還行,都是一些正則之類的東西

Warrior:
三方應用的,搞的不能直接把文字輸入啊,高德

appleMan :
這個功能可以很便捷的去管理和製作一個工作流

Warrior :
工作流,做什麼,掃碼付款

appleMan:
自己去摸索下吧!

Warrior:
恩,就是現在三方應用不會接受輸入的……,
自帶應用倒沒問題

appleMan :
是的,目前支援的都是蘋果自家的應用

Warrior :
語音輸入轉化的文字傳不進去三方應用 

13、公司來了一個新人,需要給他建立一個自己的共享版本庫。
答題大佬:群主

問題貢獻者:葉舟

葉舟:

在xcode9裡的git怎麼建立本地的共享版本庫啊, 我看wwdc裡也沒有說到這一點 。就是比如 公司來了一個新人 需要給他建立一個自己的共享版本庫 

群主:
使用選單[Souce Control > Clone],然後輸入遠端git中的資源路徑,在新的電腦上down一個庫。

葉舟:

在xcode9.4上 這個configure介面在哪裡啊 ,好難找,這個是add remote。

群主:

葉舟:
這個知道,但是他這個是add exsting remote ,沒有add remote那個選項啊。
好了,解決了。不過我建立倉庫怎麼總是failed 呢 xcode9.4

群主:

推薦用這個

https://desktop.github.com/ 很簡單

14、你好,有辦法自定義

MKAnnotationView麼?

leftCalloutAccessoryView,rightCalloutAccessoryView無法滿足要求。

答題大佬:群主

問題貢獻者:葉舟
有啊,參考這個,Completely Custom Annotation Views
https://digitalleaves.com/blog/2016/12/building-the-perfect-ios-map-ii-completely-custom-annotation-views/ 

15、請問moya.怎麼post.[string]陣列到伺服器呀?
答題大佬:群主

問題貢獻者:김위청

김위청:
這裡book是[string]裡頭有值。但是我這麼post的話,服務端獲取

不了。

群主:

沒有使用過Moya,不過可以將陣列轉為用分隔符進行分隔的字串,將字串傳到伺服器,伺服器再用分隔符將字串轉為陣列。

김위청 : 
哦。我明白了,多謝指點。

 

16、誰更xcode10了和9.4.1比變化大嗎?語法變化大嗎?
答題大佬:群主

問題貢獻者:回憶滿滿
群主:

元件面板移到了頂部, 語法是Swift4.2,有些小變化 .

回憶滿滿:
之前的 9.4的專案 會報錯嗎?跟蘋果玩 swift 都怕了

群主:
主要是些根據Xcode提示,就可以修復的小bug

回憶滿滿:
那還好

17、請教個問題,實際專案中view頁面的通過storyboard構建還是通過原始碼寫的?

答題大佬:群主

問題貢獻者:Jack

群主:
兩種情況都有的,一般大型專案使用程式碼的比較多,中、小型專案追求開發速度的使用storyboard比較多。

Jack:

一個專案中storyboard是可以有多個吧

群主 :
是的,一般按功能模組,或者根據開發者進行多個storyboard的劃分

Jack: 
恩恩  瞭解了.

 

18、 單元測試方面的資料有沒有推薦啊?

答題大佬:群主

問題貢獻者:回憶滿滿
單元測試參考,內容比較全

https://juejin.im/post/5a58738ff265da3e4b76b62d 

19、\x01在32位機器上代表的是true?

答題大佬:群主

問題貢獻者:apple Man

群主:
參考這個https://stackoverflow.com/questions/27420174/what-is-the-meaning-of-this-value-x01 

apple Man:
我明白文章說的什麼意思了,文章是將結果專為bool用nslog進行列印的,而我是用的po指令除錯的時候,列印的。在32位機上得到的結果\x01。同樣的方法在64位機上列印的是true。明白了,謝謝提示。

20、抖音這種tabbar,怎麼佈局呀?(我想要中間是自定義的)

答題大佬:群主

問題貢獻者:網易4

群主:
編寫自定義的tab bar,不一定用系統的。也可以參考神兵利器課程中第9章的第4節和第5節。https://study.163.com/course/courseMain.htm?courseId=1003657013&share=2&shareId=1683220 (網易雲課堂課程連結)

這裡還有一些參考資料:
1.https://www.jianshu.com/p/e45a1c239451 
2.https://www.cnblogs.com/tieria/p/4557538.html 
3.http://suo.im/4pJ7U7

21、程式設計師真的需要在bug中不斷的學習英文吖
答題大佬:群主、神奇的海螺

問題貢獻者:Joseph

Joseph:

https://stackoverflow.com/questions/25484554/fatal-error-nsarray-element-failed-to-match-the-swift-array-element-type 
但還是沒解決。被卡住的感覺不太好。

神奇的海螺:
陣列元素運算錯誤在swift陣列元素型別中。

這個異常的翻譯是不支援這個平臺

Joseph:
哦哦,原來是這樣,又是4.2惹的禍。
謝了

神奇的海螺:
程式設計師需要在bug中不斷的學習英文

Joseph:
是的,的確如此,有道理。

22、學完這些,能做出微信嗎?國慶節7天不知道能否擼出來一個,我要試試!!!

群主:
實現微信客戶端的大部分功能是可以的,微信的後臺服務功能則是另外的技術了。另外Github中有Swift版的微信哦,可以下載來研究下

神奇的海螺:
不算後臺服務,就前端的iOS框架
國慶節7天不知道能否擼出來一個,我要試試

群主:
好主意啊,實踐才能學得更快!建議你多看看第2、3、4、5、7、8章節的內容,會對這次的開發有幫助。如果製作中遇到問題就發到群裡討論。

網易雲課堂《iOS從入門到精通Xcode&Swift4》

課程連結:

https://study.163.com/course/courseMain.htm?courseId=1615001&share=2&shareId=1683220

 

23、app上線新政策出來後,這個隱私政策的url是要配置的,各位上線app的炕友,注意下

多謝分享~

24、誰有青花瓷破解版啊 求分析?
群主:http://soft.macx.cn/6901.htm 

appleMan:

補充需要會員登陸https://www.charlesproxy.com 
青花瓷官網有free版的

25、請教這個錯誤提示怎麼解決?

[framework] CUIThemeStore: No theme registered with id=0  請教這個錯誤提示怎麼解決?
參考:

https://forums.developer.apple.com/thread/17436 
https://github.com/ImageOptim/ImageOptim/issues/113 

 

26、 你好,有辦法自定義?

MKAnnotationView麼?

leftCalloutAccessoryView,rightCalloutAccessoryView無法滿足要求

有啊,參考這個,

Completely Custom Annotation Views
https://digitalleaves.com/blog/2016/12/building-the-perfect-ios-map-ii-completely-custom-annotation-views/ 

27、

@群主,修復之後就變成這樣了,怎麼破?      

群主:
把[code]這個placehoder刪掉,輸入自己的程式碼即可

Joseph:
@群主 這個code怎麼編輯啊?我在跟著教程學,這裡不是很懂。

Joseph:
好了,設定好了。哈哈哈…

                        

                              

一些實用小技巧分享:

感謝蔣哥傳媒、appleMan 、Joseph等大神分享~

1、App Store 十週年,還記得2008年iOS的介面嗎?

http://c7.gg/aLt7J

2、蘋果正式釋出 Xcode 10:新 SDK、Swift 4.2、深色模式

http://coolketang.com/staticIOS/5ba047639f54540039e9f31b.html

3、App Store 8 月"三低":新增低、下架低、App 被拒數量低,蘋果這是怎麼了?

https://mp.weixin.qq.com/s/cMhvr6uCtsuJvJW52QkFtA

4、蘋果iOS 12正式版更新內容大全

http://c7.gg/aLtMV

5、Windows 95 被做成了一款 App,我們在MacBook 上體驗了它

http://www.cocoachina.com/programmer/20180907/24823.html 

6、「新iPhone發表倒數」從3.5寸到6.5寸,歷數iPhone11年來的變化

http://coolketang.com/staticIOS/5b9470b51b69e6005b594a44.html

7、快速提高工作效率-Mac自動化指令碼

http://c7.gg/aLtPT

8一個雜七雜八,卻功能完整的廣告引導頁

http://c7.gg/aLtKf

9、一篇文章看懂iOS程式碼塊Block

https://mp.weixin.qq.com/s/GLHGZzdygl6qqQh8IclqCA

10、iOS:保護 App 不閃退

https://mp.weixin.qq.com/s/4dYVbddHrozKpf_GtnyQfA

11、打造開源第一 iOS 圖片瀏覽器 (支援視訊)

https://mp.weixin.qq.com/s/hKZhlfOYfyhRWt0Aj866Vg

12、iOS 12 效率神器「捷徑」怎麼用?這裡有一份入門指南

http://c7.gg/aLtLK

13、iOS模組化探索實踐

https://mp.weixin.qq.com/s/qhmG1sYi9AxigrlDSf01Ng

14、iOS-再也不用擔心陣列越界組越界

http://www.cocoachina.com/ios/20180917/24934.html

15、ARKit:增強現實技術在美團到餐業務的實踐
https://toutiao.io/posts/2po46u

16、為什麼iOS的過渡動畫看起來很舒服?

http://c7.gg/aLtM6

17、聊聊授權登入的那些事

http://c7.gg/aLtP3

18、阿里雲伺服器2G 4核三年只需699
https://promotion.aliyun.com/ntms/act/vm/aliyun-group/buy.html?group=glMVTFVlBw 

19、給大家分享一些raywenderlich上的免費資料
https://cloud.189.cn/t/FzmA7zNFBzYn 
密碼:5111

https://pan.baidu.com/s/1LpH7lbr6JX31-0Ec8YdndQ 
密碼: 7qv1
(這是百度的,再發一次方便百度使用者下載)

20、iOS面試知識點整理(一)

https://mp.weixin.qq.com/s/ypEp1gHzyKyIdIoOYx--YQ

21、2018 6月底面試經歷簡單回憶

https://mp.weixin.qq.com/s/G3PgoQ-9Hlatr3MsFn7YMA

(阿里、網易等大廠面試經歷,你值得擁有)