最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯網營銷解決方案
ios開發(fā)圖片資源,ios圖片素材

iOS靜態(tài)庫和動態(tài)庫讀取圖片資源

在將私有組件打成二進制包的時候,我們可以選擇打包成 靜態(tài)庫 或者 動態(tài)庫 , 靜態(tài)庫 和 動態(tài)庫 讀取圖片的方式也略有不同,同時在私有組件里面指定資源的方式也分兩種,即 resources 和 resource_bundles ,下面做具體分析

奎屯網站制作公司哪家好,找創(chuàng)新互聯公司!從網頁設計、網站建設、微信開發(fā)、APP開發(fā)、響應式網站等網站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯公司2013年開創(chuàng)至今到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創(chuàng)新互聯公司

1.resources

使用 resources 來指定資源,被指定的資源只會簡單的被 copy 到目標工程中,如:

官方認為用 resources 是無法避免每個庫和主工程之間的同名資源沖突,同時,Xcode 也不會對這些資源做優(yōu)化。

2.resource_bundles

resource_bundles 允許定義當前 Pod 庫的資源包的名稱和文件。用 hash 的形式來聲明,key 是 bundle 的名稱,value 是需要包括的文件的通配 patterns。比如:

CocoaPods 官方強烈推薦使用 resource_bundles,因為用 key-value 可以避免每個庫和主工程之間的同名資源沖突

1.如果使用 resourses 指定資源:

讀取圖片可以直接從MainBundle讀?。?/p>

2.如果使用 resource_bundles 方式指定資源:

讀取圖片就要從自己的bundle讀取,也就是OTSDebugPluginsModule.bundle:

1.如果使用 resourses 指定資源:

圖片需要到自己的 frameWork 里的bundle讀?。?/p>

2.如果使用 resource_bundles 方式指定資源:

讀取圖片同樣也需要到 frameWork 里的bundle讀取,但是bundle名稱是OTSDebugPluginsModule.bundle:

后來試了一下不指定 OTSDebugPluginsModule.bundle 也行(注意:Xib和Storyboard不行,必須要指定OTSDebugPluginsModule.bundle):

動態(tài)庫加載圖片:

針對動態(tài)庫和靜態(tài)庫通過resource_bundles獲取資源,封裝了一個分類UIImage+OTSAssets.h:

1.動態(tài)庫獲取資源

2.靜態(tài)庫獲取資源

方案一:通過bundle獲取

方案二:通過bundleName獲取

有了這個分類的話,在業(yè)務組件里面獲取圖片資源就很方便了,比如在登錄模塊OTSAccountModule:

聲明:

這樣就可以全局使用了:

IOS項目新手引導頁圖片適配方案

基本上每個IOS APP都會有新手引導頁面這個功能,常規(guī)的就是幾張靜態(tài)圖片,可以左右滾動。既然涉及到圖片,就肯定會存在適配的問題(為了達到最優(yōu)的體驗效果,一般都會針對不同的分辨率設計不同尺寸的圖片),本文主要就是討論如何適配的問題。

2.1 方案一

根據屏幕分辨率的不同,使用不同的圖片。

2.2 ?方案二

熟悉IOS開發(fā)的人都知道,每一個ios項目中,都有一個Assets.xcassets文件夾,用來管理項目中所有的圖片(AppIcon、LaunchImage、其他業(yè)務圖片)。

從上面的截圖我們可以看到,xcode提供了兩個內置的類型AppIcon、LaunchImage。我們只要提供正確尺寸的圖片,ios系統(tǒng)就能在不同分辨率的設備上使用對應的圖片而無需我們自己指定;另外就是我們自己創(chuàng)建的(avatar),提供2x、3x這兩種類型的圖片即可(1x的設備現在基本上找不到了,而且當前的ios系統(tǒng)也不支持1x的設備)。那么問題來了,我們自己創(chuàng)建的圖片集合,只有3個類型(1x、2x、3x),并不能按照分辨率來設定。再看一下上面的截圖,有一個“show”的圖片集合,形式如下:

咦!這個鬼東西是怎么搞出來的?我們先看看Assets.xcassets文件夾在硬盤上的組織形式:

從上圖我們可以看到,系統(tǒng)內置的兩種類型AppIcon、LaunchImage對于的文件夾為AppIcon.appiconset、LaunchImage.launchimage,我們自己創(chuàng)建的圖片集合avatar對應的文件夾為avatar.imageset。講到這里,你應該大概猜到了show這個圖片集合是怎么創(chuàng)建出來了吧?

1、先創(chuàng)建一個LaunchImage類型的圖片集合;

2、修改名稱(LaunchImage→show)

3、修改文件夾名稱(show.launchimage→show.imageset)

回到正題,在show這個圖片集合里面,我們就可以輕松的根據分辨率設置2x、3x類型的圖片。

現在我們可以按照下圖的方式使用新手引導圖片了:

親測:不同分辨率的設備,展示對應的圖片。

我們注意到,show.imageset文件夾中有一個文件Contents.json,正是這個文件,ios系統(tǒng)才能根據設備類型展示對應的圖片資源。Contents.json文件內容如下:

系統(tǒng)展示圖片的時候,會先解析這個文件,然后根據設備的分辨率,找到對應的圖片。

關于iOS開發(fā)加載本地html 圖片等資源路徑問題

將css,html,js 所在的文件夾拖入項目的時候會有兩種情況

一個是 Create groups for any added folders (創(chuàng)建虛擬結構-包結構)

一個是 Create folder references for any added folders (創(chuàng)建實體結構)

第一種是絕對路徑 文件夾拖入為黃色

NSURL*fileURL = [[NSBundle mainBundle] URLForResource:@"index.html"withExtension:nil];

本地html中加載圖片,js,css資源也應該使用絕對路徑就行了

如 script type="text/javascript" src="index.js"/script

第二種是相對路徑 文件夾拖入為藍色

NSURL*fileURL = [[NSBundle mainBundle] URLForResource:@"file/index.html"withExtension:nil];

file為本地html所在文件夾

本地html中加載圖片,js,css資源也應該使用相對路徑

如 script type="text/javascript" src="js/index.js"/script


當前題目:ios開發(fā)圖片資源,ios圖片素材
網站網址:http://fisionsoft.com.cn/article/dsipeoe.html