1. 程式人生 > >關於iOS網路請求tabbart圖片顯示不正常的問題

關於iOS網路請求tabbart圖片顯示不正常的問題

最近專案改用網路載入圖示以及tabbar的圖片  但是tabbar一開始 的圖片 顯示完全不正常   不僅大小不正常   而且我的圖片是彩色的 現在是白和藍色   網上查了一些資料  原來tabbar會預設圖片的顏色  這個時候我們需要使用image的一個設定  使用

imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal 

保證圖片不被修改  結果圖片會變成這樣圖片顏色回來了  但是大小還是不正常 搗鼓了一下午 中間修改圖片尺寸 甚至自定義tabbar 終於發現問題  需要在圖片後邊加上@2x或者@3x(網路請求的話可以在存本地的時候將圖片名稱拼接@2x @3x 具體幾倍可以通過後臺設定來取

)  不然tabbar會把圖片當成@1x的  即圖片多大  tabbar的圖片就有多大  後來將圖片甚至成@2x  圖片正常了

2017.4.7更新  鑑於很多人讓我貼程式碼  我還是在這裡講一下  我們要做的就是簡單的將網路請求圖片資料寫入本地  中間出現的唯一問題就是圖片沒法適應高度  蘋果官方文件裡tabbar圖片尺寸為25x25的  直接讓後臺給這麼大的肯定不行  因為圖片會模糊  所以我讓後臺給 50x50的 我這邊名稱拼接@2x

 1.獲取圖片名

NSArray*stringArr = [imageUrlcomponentsSeparatedByString:@"/"];imageUrl

為從介面獲取的圖片URL

NSString*imageName1 = stringArr.lastObject;

NSArray *arr = [imageName1 componentsSeparatedByString:@"."];

NSString *imageName;

if (![arr[0] isEqualToString:@""]) {

        imageName =[NSString stringWithFormat:@"%@@2x.jpg",arr[0]];

}//一般URL就是伺服器拼接圖片名稱 比如:http://pic55.nipic.com/file/20141208/19462408_171130083000_2.jpg,而我們要做的就是獲取圖片名稱19462408_171130083000_2

,拼接@2x.jpg然後建立路徑(資料夾路徑 拼接 圖片名稱 比如:沙河路徑[email protected]),然後將其data寫入到該路徑下

2.寫入到沙盒路徑下

NSData *data = [NSDatadataWithContentsOfURL:[NSURLURLWithString:imageUrl]];

UIImage *image = [UIImageimageWithData:data];//這兩步是下載圖片到本地 耗時操作  建議放在子執行緒來做(為image賦值在子執行緒是可操作的 並不是重新整理UI 不需要回到主執行緒做) 

NSArray *paths =NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES);

NSString *filePath = [[paths objectAtIndex:0]stringByAppendingPathComponent:imageName];

//這一步就是拼接路徑了 

if ([UIImagePNGRepresentation(image) writeToFile:filePath atomically:YES]) {

}//這一步就是寫入操作了  返回值是一個bool值  表明是否成功  




相關推薦

關於iOS網路請求tabbart圖片顯示正常的問題

最近專案改用網路載入圖示以及tabbar的圖片  但是tabbar一開始 的圖片 顯示完全不正常   不僅大小不正常   而且我的圖片是彩色的 現在是白和藍色   網上查了一些資料  原來tabbar

ionic3在ios上頂部導航欄顯示正常--據頂部有空隙條

在專案中遇到這樣的問題: 如圖: 頂部導航平白多了一道白條,而且這個只是在ios的真機或者是模擬器上才顯示,用chrome和android真機是一點問題沒有,於是就重新下載了一個tabs專案,執行,也沒有問題,一點點兒找原因才發現是因為覺得不需要頂部導航,就給去掉了,於是,解決的

Glide與CircleImageView載入圓形圖片顯示正常的問題

前言:最近在專案中遇到了一個奇怪的bug,Glide和CircleImageView一起使用載入圓形頭像,發現第一次死活都加載出來,出來的是一張佔位圖,當你重新整理的時候或者第二次進入的時候才能加載出

ubuntu下Chrome谷歌瀏覽器部分網站圖片顯示正常的解決方法

lse 刷新 false 設置 rom chrom ubunt 谷歌 分網 title: ubuntu下Chrome谷歌瀏覽器部分網站圖片顯示不正常的解決方法 toc: false date: 2018-09-02 14:37:26 categories: method

列表中Glide載入圖片大小顯示正常問題

Glide載入圖片時大時小 前言:最近在專案中發現了一個奇怪的現象,在列表的item佈局中使用了glide來載入網路圖片,奇怪的現象出現了…同一張圖,同一份資料,有的時候顯示正常,有的時候該圖片顯示出來會稍微小一圈… 解決辦法:百思不得其解,找了很多資料,以為對recyclervie

吐血中, 呼叫分享到微信好友,載入的網路圖片顯示出來,微信分享,自定義分享標題、內容描述關鍵詞限制(紅包)

太坑爹了,嘗試吐血後,總結一番,這種問題,讓我從何說說起啊!!!!!!!分享後,自己能看到,自己分享的連結圖片,被分享人竟然看不到圖片!!原因何在我分享到對方微信好友,截圖展示:對方截圖展示:竟然是自定義title中,和content中,存在『紅包』兩個字的字眼,逼瘋了,去掉

關於Win7網路小圖示顯示正常的解決辦法

昨日搗騰了一下筆記本,後來突然發現Win7工作列通知區域的網路小圖示總是顯示為無線未連線的狀態(實際是用的有線,且能正常上網),後來網上查了一下,原因是開啟了系統服務——Routing and Remote Access(路由服務),將其禁用並重啟電腦後圖示就正常了!  

解決jenkins下使用HTML Publisher插件後查看html報告顯示正常 以jmeter報告為例

com 顯示不全 rip lis support https ima 註意 jenkins jenkins 配置使用html publisher查看jmeter html報告時,發現顯示不全,很多東西顯示不了。 項目配置: 查看html報告異常(很多資源無法加載)

解決 jenkins 下使用 HTML Publisher 插件後查看 html 報告顯示正常

nbsp note property support css CA 方法 prope 系統管理 方法一: 我的網頁使用的是css和Js,所以顯示不全。解決方法如下:在jenkins系統管理中輸入以下腳本運行:System.setProperty("hudson.model.

window 10 64bit Tortoise SVN 圖標狀態顯示正常

drive ros tor 顯示不正常 version 文件 註冊表 over 搜索 https://www.cnblogs.com/lzpong/p/6187366.html 根據以上帖子處理 HKEY_LOCAL_MACHINE\SOFTWARE\Microso

Android ScrollView巢狀ExpandableListView顯示正常的問題的解決辦法

  關於ScrollView巢狀ExpandableListView導致ExpandableListView顯示不正常的問題解決方法有很多,在這裡介紹一種小編親自測試通過的方法。 1:不顯示chidview: 重寫ExpandableListView : public&n

ELK企業應用-kibana頁面顯示正常(一)

ELK企業應用-kibana頁面顯示不正常(一) kibana頁面顯示不正常-Request Timeout after 30000ms 1:錯誤頁面 2:問題分析 kibana處理時間過長,應該是日誌過大導致kibana呼叫超時 檢查服務埠 埠存活 檢查

Android中的Https網路請求get和post 進行認證

HTTPS(全稱:Hyper Text Transfer Protocol over Secure Socket Layer)是通過證書認證、資料加密打造的一條安全的HTTP通道,也就是安全版HTTP,一般在金融行業用到的比

iOS元件化解決圖片顯示問題

在元件化時,對於圖片資源,我們需要把對應元件的圖片資源放到對應元件如下位置: 這裡有個注意的地方: 在上圖Assets目錄下是直接把相關圖片匯入進來還是在Assets下新建一個資料夾,再把圖片匯入到該資料夾,取決於podspec檔案的下圖位置: 對應下圖: 修改podspec檔案 總

Linux下,Java圖形介面程式中文顯示正常顯示為方格)問題解決

RedHat或其它Linux系統下中文顯示為方格,原因是JRE環境中中文字型設定異常。 1.首先找到JRE所在的目錄,如在RedHat Enterprise 6中的目錄為:/usr/lib/jvm/java-1.6.0/jre 2.將windows中文字型simsun.ttf或simsun.ttc拷

(圖文)SVN檔案/資料夾圖示顏色顯示問題解決辦法、SVN資料夾和檔案狀態圖示顯示正常

svn檢出的資料夾上沒有綠色的對號,或者紅色的感嘆號標識。仍然是windows預設的資料夾。 解決方法: 首先,用win+R鍵開啟 執行 視窗,裡面輸入regedit(登錄檔),確定進入 首先我們找到localmachine,點選進入,下面找到software,展開下面的節點 在sof

火狐瀏覽器(bug)圖片顯示出來

專案中遇到這樣一個問題,圖片在其它瀏覽器中正常顯示,火狐中不行,經測試是圖片名字問題可能是火狐的bug 火狐瀏覽器版本 2018.11. 26左右 最新版發現   不帶特殊符號 如(-,_) 圖片名字長度  純字母小於3位或 字母加數字小於4位數的不顯示   帶特殊符號 如

vi編輯器方向鍵和backspace鍵顯示正常的解決辦法和ubuntu的root密碼

網上看了很多方法,最簡單粗暴的莫過於改vim的配置檔案。方法如下: 首先改配置檔案要先切換到root賬戶,而今天使用ubuntu時想起來自己並沒有建立root賬號,更不用說密碼了。 然後我們只需要輸入 sudo passwd root 然後按提示輸入賬戶密碼,設定ro

ionic3圖片命名修改後打包後的app圖片顯示出來

背景:將某一張圖片命名從小寫改成大寫後,生成的app該張圖片顯示不了,經定位是因為圖片找不到。 原因:打包環境有自己的資源快取,打出來的包裡面命名還是之前的圖片命名,因此顯示不了。 解決方法:將打包環境快取的資源刪除後重新打包(將以下3個www檔案刪除)。    &n

Linux的瀏覽器中等寬字體顯示正常的問題

tlab 查看 ubunt 想法 -c chrome linux 多人 ges 在Ubuntu下查看簡書、掘金和自己的個人博客時代碼總是不能正常顯示為等寬字體,讓人感覺不爽。甚至讓我產生了如下想法:為什麽在簡書中瀏覽代碼時的體驗明明如此之差,但還是有這麽多人在上面發布技術博