繼上一篇文章想要客製化Navigation bar 的back button 時所產生swipe back 失靈的解法,反倒想想我只是要更改「back button title」也要這麼大費周章嗎?這篇文章之所以說是「正確」方法,是因為他不會產生什麼Bug而且可以正確地執行,不用像上一篇文章用盡各種辦法Hack 來達成目的(當然,在某些狀況下或許那個Hack 方式依然需要,例如:隱藏Navigation bar)
尋找了一下其他解法,讓我們先來看看官方文件怎麼說:
透過置換UIBarButtonItem的方式來取代系統原已的Back button 會導致系統原生的Swipe back被disable,原因我還沒有詳細了解,還是想先找到解法,於是搜尋了許多文章,其中提到的一個Hack way:
常常有些狀況需要過濾掉字串頭尾的空白或換行符號,這時後NSString 的stringByTrimmingCharactersInSet就派上用場。
NSString *string = @" this text has spaces before and after "; NSString *trimmedString = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; // 如果要去掉換行的話則改成 NSString *trimmedString = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
很簡單的方法,只是跟多數語言字串處理的trim()方法相比…Foundation Framework的命名實在是XD。
Reference:
本書作者Teddy在書中提到軟體開發中的浪費可以歸類成以下七種:
以下僅為個人讀書心得,參雜書中內容,若有版權問題懇請回復修正Orz。
當我使用interface builder 加上一個UINavigationbar的時候,我發現與系統自動產生的navigation bar 顯示出來的狀態不同,由於實在是很醜,而且當切換Navigation bar的顏色時,Status bar的顏色是不會改變的(正確來說Status bar是透明無色的),所以只能想辦法讓navigation bar 緊貼裝置頂部,好久以前我記得我解決的方法是想辦法透過 CGRectMake 來重畫Navaigatino bar的高度,他只能在程式內實作,而且我覺得是一個不治本的方式,於是我找到了相關解法。
© 2022 Marcus’ Blog
Theme by Anders Noren — Up ↑