在經歷了6個月的學習後,我終於上架了自己的第一款APP---酷課堂iOS群問答精華整理(201807期)
酷課堂iOS交流群
我們是一個什麼樣的組織:
酷課堂iOS交流群,聚集了一群熱愛技術、有趣、有料,平均Q齡在10年以上的“老司機”,他們遍佈在全國/球各地,有知名企業iOS工程師、高校大學生、自由職業者……如果你也是這樣的人,歡迎加入我們,一起暢聊iOS技術及周邊。
“很乾”
“很佛系”
每晚11點後熄燈(禁言),只聊技術,幾乎不閒聊。
IT從業者自學成功的不少,但從入門到放棄的人更多。一個人走的快,一群人走的遠,希望你會是堅持到最後的那一波,希望我們可以一起相伴走的更遠一些。
付費學員專享福利:
(額外福利,不承諾永久提供!)
1.為了更好的交流,我們開設了QQ群
2.已購買課程的同學,請新增小課微訊號:coolketang001、QQ:3068527144
3.截圖訂單號,即可獲取對應QQ群號,及免費練習原始碼。
(蘋果商店的訂單號,可在購買賬號繫結的郵箱中找到)
1、請問,我想在其他類裡面設定角標,怎麼拿到UIApplication例項?
答題大佬:群主
問題貢獻者:誠紳
建議如下:
UIApplication.shared.applicationIconBadgeNumber = 1
OK,謝謝!
2、請問,searchbar cansel 怎麼修改?
答題大佬:群主
問題貢獻者:김위청
建議修改如下:
var cancelButton: UIButton? var topView: UIView = searchBar.subviews[0] as! UIView for view in topView.subviews { if view.isKindOfClass(NSClassFromString("UINavigationButton")){ cancelButton = view as? UIButton } } if (cancelButton != nil) { cancelButton?.setTitle("取消", forState: .Normal) }
嗯,是的,這位同學已經會自己解答了,棒棒噠~
3、哪位大神給指點下。打包上架出現錯誤。
能具體到是如下兩個類引起的,我把下邊兩個從Compile Sources中移除就不會有問題,截圖和操作如下:
答題大佬:群主、風
問題貢獻者:風
我有試過把那2各類移除,重新新增到專案,還是不行,不知怎麼處理,完全沒思路了。
相關庫也反覆移除添加了,還是沒效果。
@群主 怎麼算是更換呢?移除再新增算麼?
終於解決了,
修改的
Valid Architectures引數。原來是靜態庫不支援armv7指令集。
@群主,請問有沒有製作靜態庫/動態庫的方法介紹 && 注意事項 的相關介紹文件。網上搜了一些,總覺得了解還不全面,謝謝!
靜態庫的製作可以參考,最好手動製作一份。 1、https://blog.csdn.net/sadsadaadsd/article/details/77878279 2、http://www.it72.com/thread-7956.htm 3、http://www.cocoachina.com/ios/20150226/11182.html
4、求助各位大神,有遇到這個問題的嗎?
答題大佬:群主
問題貢獻者:一馬當先
@一馬當先 這個問題可以參考: https://blog.csdn.net/king457757706/article/details/53024047 https://www.jianshu.com/p/2b3f58c61d7d
5、怎麼把一個動圖製作成幀動畫裡的圖片組,求大神指點!
答題大佬:群主、誠紳
問題貢獻者:無騖
需要使用Photoshop之類的軟體
另外SDWebImage 裡面有個方法,可以看一下
6、求助,這裡按鈕大小不生效,不知道什麼問題,升級了swift4 就這樣了,之前swift3不會。返回按鈕圖片的大小設定不了。
答題大佬:群主、炒菜要放辣椒
問題貢獻者:航歡網路-曾
試試這個: self.navigationItem.leftBarButtonItem = UIBarButtonItem(image: UIImage(named: "Reture"), style: UIBarButtonItemStyle.plain, target: self, action: #selector(backBtn(_:)))
這裡去掉,你可以檢查一下程式碼的意思.
7、請問如何匯入第三方庫?
答題大佬:群主
問題貢獻者:無騖
一般有三種方式: 1、直接將庫檔案拖動到專案中 2、使用Cocopods安裝 3、使用Carthage安裝
8、求問大神這個錯誤大致是什麼意思,我剛剛從GitHub下載Spring-swift4直接拉入進去就出現感嘆號了。
答題大佬:群主
問題貢獻者:無騖
參考:
http://www.cocoachina.com/bbs/read.php?tid=228613 你需要安裝的是:
https://github.com/MengTo/Spring 這個類庫嗎?
就是這個,直接拖入之後出現問題, 您可以發一個帶有第三方庫的app開發利器的程式嗎,想明白它需要的到底是啥?
app開發神兵利器專案中有Spring課程,也有課程原始碼,你可以參考課程的原始碼。不過課程原始碼是使用Cocopods安裝的
難怪呢
@無騖、 請參考發給你的Demo,你之前匯入的是整個Spring專案,只需要匯入Spring資料夾就行了
好的,thank you !
9、請各位老師指點,寫一個計算機的程式有閃退的情況, 怎麼處理, 是不是我哪裡寫錯了?
答題大佬:群主
問題貢獻者:劉鼕鼕
你試下發給你的那個demo先,不是用故事版,可以修改為故事版模式。 報錯:故事板中名為king4的key有問題
點選這裡的King4左側的叉,刪掉這個Outlet就行了
好的謝謝,我是剛入坑的小白,多謝群主指點!
10、想問下手機升級到iOS12了,但是想給降到iOS11,這怎麼降級啊!是不是不讓降級了啊?在蘋果網站上沒有搜到。
答題大佬:群主
問題貢獻者:檸檬 試試:
http://iphone.poppur.com/JiaoCheng/7695.html
11、請老鐵們,幫我看一下,這個現在怎麼寫才好?
答題大佬:群主、appleMan
問題貢獻者:김위청
首先:import UserNotifications 然後:
UNUserNotificationCenter.current().removeAllPendingNotificationRequests() 這個移除角標的方法貌似在ios10上面已經廢棄,更換為群主說的那個方法了,如果要相容低版本,要判斷系統然後呼叫對應的方法即可。
12、求支援,例項中
UILongPressGestureRecognizer.began
提示began這個屬性不存在 ,怎麼破?
答題大佬:群主
問題貢獻者:選擇1+1 修改為:
if(gusture.state == UIGestureRecognizerState.began)
13、剛入坑iOS小白一枚,請教一個問題,怎麼設一個變數作為計數器,函式執行一次就改變一次呢?
答題大佬:群主
問題貢獻者:噢呦呦 @IBAction func selfCheck(_: Any) { var string = selfCheck self.sendTextField.stringValue = selfCheck if self.shouldAddLineEnding && !string.hasSuffix("\n") { string += self.lineEndingString } if let data = string.hexadecimal() { self.serialPort?.send(data) var countNumber = 1 } }
最後那個countNumber每次執行以後沒變化。。。countNumber這個值你寫死了,試下 var countNumber += 1; 能不能等於固定值呢?不同的按鈕返回不同的值,後面要用一個switch迴圈
什麼應用場景?先簡單描述下(手把手帶你一起解決,實際案例中碰到的具體問題)
希望按下每個按鈕以後,能有得到一個計數,比如1.2.3.4,然後根據計數的1.2.3.4,輸出不同的結果。
你是想做計算器的效果? 不是的,按鈕還會輸出一個字元到串列埠,返回值需要不同的方式變換成string或者int型別,所以打算用switch根據計數器,做變換就是要設一個變數,然後按一個按鈕就改變一次變數的值。
比如我按了selfcheck就讓countNumber這個變數變成1。按setUltra:60,countnumber就變成5。確實和計算器選擇運算子是一樣的操作,多謝提示。
14、老鐵們,這種頁面怎麼寫呢,有沒有思路推薦。
答題大佬:Rocky
問題貢獻者:King
UITableView+自定義輸入框(輸入框+底部按鈕)僅作參考 我也是小白 是的,用這種思路可以完成這個頁面。 或者參考《神兵利器》教程中的第9章第10節,關於第三方類庫Chatto的使用。
然後自定義幾種UITableViewCell應該齊全了,我的感受是,咱們初學者還是少用框架的好
我去看看,多謝!
15、請問,
我繼承了上面的 controller,想呼叫裡面的 interactor怎麼呼叫,
直接寫 interactor沒有這個值,困惑?
答題大佬:群主
問題貢獻者:김위청
試試寫self.interactor,哦,是用Swift呼叫OC的
對 我是繼承了oc的controller,self不行 @群主,我沒太明白這個。我不可以簡單的呼叫使用嗎? 哦,這是第三方通訊類庫,看到這種用法[super.interactor markRead],你試試super.interactor,如果還不行,將專案打包發來看看群主好贊 週末還答疑。
16、請問,如何設定UICollectionView 才能產生畫廊的功能,用的swift。
答題大佬:群主
問題貢獻者:清晨 參考:
http://www.cnblogs.com/Free-Thinker/p/7233320.html
17、問一下, 大家swift歸檔用什麼工具?
答題大佬:群主
問題貢獻者:∑聖?賢々資料多的話使用fmdb或者CoreData
還有第三方SQLiteSwift和AERecord,參考《神兵利器教程》
(提示:點選文末閱讀原文可找到免費課程下載連結)
18、有沒有OCR拍照識字的教程推薦啊!
答題大佬:群主
問題貢獻者:賴著 @賴著/熱心/活躍氣氛 參考百度雲的OCR識別SDK https://cloud.baidu.com/doc/OCR/OCR-iOS-SDK.html#.E8.BF.9C.E7.A8.8BAPI.E8.83.BD.E5.8A.9B
19、上架的時候遇到的問題,求指點,這個是什麼錯誤呀?我圖片都按正常的尺寸放的
答題大佬:群主、appleMan
問題貢獻者:김위청
參考:
https://www.jianshu.com/p/7f2ba34de4d8
注意:(敲黑板,畫重點啦~)
因為你的iTunes Connect狀態是元資料的拒絕,不需要一個新的二進位制。只需要重新100%的 command + S 去模擬器截圖 APP 內容.
@群主 就是說 我得用實際的手機圖片 才可以嗎? 在模擬器中按下Command + S擷取螢幕 我的模擬器很長時間 都不行了,嘗試過很多方案都不行 重新啟動下電腦試試。 @群主。這個圖片我只能用模擬器的圖片嗎?不能我自己設計圖片嗎? 一般情況下不直接使用模擬器圖片也可以,解析度符合要求就行。但是稽核人員既然提出這個問題,你又認為解析度是符合要求的,所以建議使用模擬器截圖圖片。用真機截圖應該也可以。 好,我明白了。非常謝謝!
20、各位,有木有免費的伺服器可以使用的?
答題大佬:MissLIBRA
問題貢獻者: appleMan 亞馬遜 12個月
怎麼樣,穩定不
日本節點 聯通極為穩定
嗯嗯,我看看,謝謝!
21、searchbar cansel 怎麼修改?
答題大佬:風
問題貢獻者:風 var cancelButton: UIButton? var topView: UIView = searchBar.subviews[0] as! UIView for view in topView.subviews { if view.isKindOfClass(NSClassFromString("UINavigationButton")){ cancelButton = view as? UIButton } } if (cancelButton != nil) { cancelButton?.setTitle("取消", forState: .Normal) }
22、請問,我想在其他類裡面設定角標,怎麼拿到UIApplication例項
答題大佬:群主
問題貢獻者:誠紳
群主:
UIApplication.shared.applicationIconBadgeNumber = 1
23、求助各位大神,有遇到這個問題的嗎?
答題大佬:群主、appleMan
問題貢獻者:一馬當先
@一馬當先 這個問題可以參考這個: https://blog.csdn.net/king457757706/article/details/53024047 https://www.jianshu.com/p/2b3f58c61d7d
24、這是怎麼回事?我是新手,請大家多多指教,謝謝。
答題大佬:群主
問題貢獻者:吳冠澄
群主:
登入https://developer.apple.com/ 點選右上角的Account,然後使用你的開發者賬號登入,接著新增測試裝置,並建立測試證書
越來越多小夥伴陸續上架了,自己的第一款APP,祝賀,期待看到更多作品。
25、請問 app 上架成功之後 怎麼獲取我的App 我現在上架成功之後在app store 上 無法查詢我的App
答題大佬:群主
問題貢獻者:김위청
按關鍵字查詢也不行
群主:
https://itunes.apple.com/cn/app/id1063100471 將id後面的數字更換為你的app的id就可以開啟你的app了。 上架成功要等一兩天才能搜尋到app,因為app要逐漸釋出到蘋果的各個伺服器。
哦,明白了,謝謝!
雖然遇到各種各樣奇葩的問題,但能夠上架自己的APP真的是一件非常有成就感的事情。也很感謝遇到咱們這個有愛的群,各位大神、同學們的幫助和指點!
26、請問,這個測試的成功 但是線上的就是token錯誤是什麼問題呀?
答題大佬: 群主、回憶滿滿
問題貢獻者:김위청
我申請證書是,在這裡申請的:
請參考:
http://www.cnblogs.com/Jenaral/p/6283032.html
@群主 他這裡說的是,pushnotification 關掉,這個關掉 能收到訊息嗎?
作者也這麼講,你測試一下看看:
27、請問SDWebImage 4.0 是不是預設的圖片載入不支援gif了啊?
答題大佬:誠紳、群主
問題貢獻者:Rocky SDWebImage 4.0用FLAnimatedImageView通過FLAnimatedImage顯示GIF圖。
SDWebImage 4.0之前,可以用UIImageView顯示GIF圖。如果SDWebImage 4.0還這麼做,只會顯示靜態圖。 參考:
http://www.cnblogs.com/silence-cnblogs/p/6682867.html
28、請問,為什麼會沒有switchChanged?
答題大佬:群主
問題貢獻者:狄絲
將方法名稱修改為:
uiSwitch前面補上 _,表示省略方法的預設外部引數名群主實在太牛x了,非常感謝。
29、@群主 搜尋欄迴歸到原來位置的時候,uisearchController取消事件,怎麼有一點卡頓?
答題大佬:群主
問題貢獻者:King
不是卡頓,是動畫沒有同步。建議通過註釋程式碼的方法,找出是哪些程式碼造成這種問題的。如果是uisearchController自身的問題,那就需要手動實現這個search功能了。哦,原來是這樣,謝謝!
30、請問,如何實現App向微信的群聊發訊息,類似於微信機器人!
答題大佬:群主
問題貢獻者:shoufby 這個需要確認微信的API文件是否提供了相關的介面。
企業微信API有訊息推送介面
前方預警:這是一條有點長的討論……
31、請問一下關於pod的使用,第一次使用是不是會把所有的源都down下來啊。
答題大佬: 歲月、群主
問題貢獻者:Rocky 群主:
不需要,直接pod install就行了
Rocky:
是這樣使用的,但是,查看了一下.cocoa pods資料夾,好大,一堆資料夾,足有1個g的大小
歲月 : 你的Podfile有多少行 Rocky: 4行
歲月: 那肯定是你呼叫方法出問題了
Rocky“ 就添加了一個SDWebImage,我要重新安裝嗎? 歲月:
你弄錯了,不是這樣用的。
開啟命令列sudo gem install cocoapods
vim Podfile這句用了嗎?(學長附身手把手教的既視感~)
Rocky:
嗯,這個是配置到專案上的
歲月:
再在裡面寫Podfile
Rocky:
然後pod install
歲月:
對的
Rocky:
執行沒問題
歲月:
這樣到時候基本上就可以直接import了 你那個spec 檔案可以移除
Rocky:
我就是不大明白為什麼有那些檔案
歲月:
專案不需要
Rocky:
這個不是專案裡面的
歲月:
好吧
Rocky:
是cocoa pods的預設創作的一個配置路徑下的 建立
歲月:
可以不要了
Rocky:
你確定 歲月 我搜下我的電腦 歲月 你這個檔案在哪找到的 Rocky- 使用者目錄下 ,開啟隱藏的檔案 歲月 怎麼開啟去了,我忘了,你是怎麼開啟的 Rocky- 終端也能看到的啊 歲月 用命令列 ? Rocky- 也可以 歲月 ls -all 歲月 你教我怎麼不用命令列開啟隱藏檔案,應該做不到 Rocky- 這個有選項啊 Rocky- 可以度娘一下吧
歲月:
其實話說回來,既然它不影響專案,何必在意它呢。
Rocky:
這話沒毛病
一些實用小技巧分享:
1.WKWebView的15條應用指南:
http://coolketang.com/staticIOS/5b36f765ee920a003a15f20d.html
2.EasyPlayer iOS開源流媒體播放器中AAC解碼PCM問題:
https://blog.csdn.net/xiejiashu/article/details/52433989
3.十年了,App Store 最好玩、最好用的 app 全在這了
http://coolketang.com/staticIOS/5b3ad73a756571003a715362.html
4.Xcode10新內容
http://coolketang.com/staticIOS/5b36fb0cee920a003a161458.html
5.iOS 新功能 快捷指令 試用 -- 可程式設計的工作流
http://coolketang.com/staticIOS/5b42cc00ee920a003bf43cc3.html
6.OCR iOS SDK的安裝和使用
https://cloud.baidu.com/doc/OCR/OCR-iOS-SDK.html#.E8.BF.9C.E7.A8.8BAPI.E8.83.BD.E5.8A.9B
7.iOS一行程式碼監測FPS/記憶體/CPU
http://www.cocoachina.com/ios/20180720/24254.html
8.這一篇百度 iOS 面試總結轟動整個開發界【頭條熱搜】 https://www.jianshu.com/p/9c9dfa07b9a1
9.對 iOS app 進行安全加固
http://www.cocoachina.com/ios/20180719/24229.html
10.Appium自動化—淺談iOS自動化測試環境搭建https://www.jianshu.com/p/c43a94ecca97
11.Udacity也棄用React Native了 !看看他們使用React Native過程中遇到的問題。
http://www.cocoachina.com/programmer/20180712/24135.html
12.UIViewController的瘦身計劃(iOS架構思想篇)http://www.cocoachina.com/ios/20180713/24159.html
13.iOS 11.4.1 正式版釋出!修復 bug 、提升穩定性
http://www.cocoachina.com/apple/20180710/24098.html
金九銀十,求職季,分享一波面試題,預祝大家都能如願!
1.iOS開發筆試題600題:(1000題都有參考答案) 連結:
https://pan.baidu.com/s/1pM2O1rP (密碼: s79r) 2.iOS開發面試題400題: 連結:
https://pan.baidu.com/s/1i6DQbGx (密碼: 8jnm)
3.100家公司近年面試題整理,打造最受企業歡迎的iOS開發者https://www.jianshu.com/p/405a273b960e