聊天平臺原始碼,解決設定導航欄按鈕圖片變色問題
聊天平臺原始碼,解決設定導航欄按鈕圖片變色問題的相關程式碼
利用以下程式碼給導航欄按鈕設定圖片時,發現原本是黑色的切圖顯示成了藍色。
UIButton *editButton = [UIButton buttonWithType:UIButtonTypeSystem]; [editButton setImage:[UIImage imageNamed:@"home_edit"] forState:UIControlStateNormal]; [editButton addTarget:self action:@selector(didTapEditButton:) forControlEvents:UIControlEventTouchUpInside]; UIBarButtonItem *rightItem = [[UIBarButtonItem alloc] initWithCustomView:editButton]; self.navigationItem.rightBarButtonItem = rightItem;
解決方案
在 iOS 7 的時候,UIImage 多了一個 renderingMode 的列舉型別屬性,以設定 UIImage 物件的渲染方式,即是否根據當前的 Tint Color 進行渲染。UIImageRenderingMode 列舉的系統定義如下:
typedef NS_ENUM(NSInteger, UIImageRenderingMode) { UIImageRenderingModeAutomatic, // 根據圖片的使用環境和所處的繪圖上下文自動調整渲染模式。 UIImageRenderingModeAlwaysOriginal, // 始終繪製圖片的原始狀態, 不適用檢視Tint Color UIImageRenderingModeAlwaysTemplate, // 始終根據Tint Color進行圖片繪製, 忽略圖片原本的色彩資訊 } API_AVAILABLE(ios(7.0));
renderingMode 屬性的預設值為 UIImageRenderingModeAutomatic,我們可以利用系統提供的 imageWithRenderingMode: 方法進行該屬性值的設定。
於是,我們修改上問題描述中的程式碼,讓 UIImage 始終繪製圖片的原始狀態。
UIImage *image = [UIImage imageNamed:@"home_edit"]; [editButton setImage:[image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] forState:UIControlStateNormal];
以上就是聊天平臺原始碼,解決設定導航欄按鈕圖片變色問題的相關程式碼, 更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2838551/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自定義導航欄返回按鈕導致返回手勢失效問題
- 聊天平臺原始碼,TextView部分文字變色原始碼TextView
- uniapp更改導航欄按鈕文字APP
- 分析微信(iOS 版)定製導航欄按鈕的思路iOS
- 直播平臺原始碼,css移動端設定底部導航欄原始碼CSS
- 聊天平臺原始碼,Android 解決menu彈出蓋住標題欄原始碼Android
- 手機直播原始碼,突出底部導航欄中間按鈕的樣式原始碼
- 談導航欄返回按鈕的替代方案
- iOS隱藏導航欄的返回按鈕iOS
- 直播系統原始碼,按鈕圖片和文字位置的各種設定原始碼
- Qt中按鈕背景圖片的切換設定QT
- 記一次Vue跨導航欄問題解決方案Vue
- iOS 導航欄顏色透明度漸變iOS
- CSS_導航欄+固定浮動的回到頂部按鈕CSS
- 視訊直播app原始碼,按鈕被按下時顏色隨著改變APP原始碼
- html匯入導航欄本地檔案解決跨域問題HTML跨域
- 簡易的iOS導航欄顏色漸變方案iOS
- 短視訊平臺原始碼,透明導航欄 AppBar原始碼APP
- 點選按鈕設定其背景顏色程式碼例項
- iOS開發:給UIWebview的導航欄新增返回、關閉按鈕iOSUIWebView
- js實現點選導航欄使當前背景變色程式碼JS
- 直播系統app原始碼,漸變色按鈕帶陰影樣式APP原始碼
- 直播app原始碼,狀態列和導航欄設定成透明狀態APP原始碼
- WPF 按鈕背景圖片
- EM按鈕亂碼問題
- iOS導航欄標題錯亂的解決方法iOS
- 直播系統平臺原始碼隱藏虛擬導航欄,禁止下拉通知欄,禁止上滑出虛擬導航欄原始碼
- iOS 導航欄背景顏色完全透明及漸變iOS
- 聊天平臺原始碼,標題過長自動應用摺疊式標題欄原始碼
- weex沉浸式導航欄解決方案
- [提問交流]能直接設定二級導航欄目嗎?
- Oracle EM按鈕亂碼問題Oracle
- Vue 導航 點選當前標題變色Vue
- 聊天平臺原始碼,聊天平臺如何獲取到音訊流原始碼音訊
- 短視訊直播原始碼,實現頂部導航欄背景圖片漸隱漸現效果原始碼
- 直播平臺原始碼,qt繪畫事件-設定背景圖片原始碼QT事件
- 直播app系統原始碼,Flutter中導航欄和狀態列設定成透明APP原始碼Flutter
- 聊天平臺原始碼,登入時拼圖驗證原始碼