天天看點

瘋狂ios講義瘋狂連載之加載界面的圖檔

正如前面FKBaseBoard類的代碼中所看到的,當程式需要建立N個FKPiece對象時,程式會直接調用getPlayImages()函數去擷取圖檔,該函數将會随機從項目包下取得N張圖檔。

為了讓getPlayImages()函數從項目包下随機取得N張圖檔,程式的實作思路可分為如下幾步。

① 使用NSBundle的方法擷取項目包下所有以p_開頭的圖檔(假設約定所有的圖檔都以p_開頭),并将這些圖檔名添加到一個NSMutableArray集合中。

② 從第1步得到的NSMutableArray集合中随機“抽取”N/2個圖檔ID。

③ 将第2步得到的N/2個圖檔ID全部複制一份,這樣就得到了N個圖檔ID,而且每個圖檔ID都可以找到與之配對的。

④ 将第3步得到的N個圖檔ID再次“随機打亂”,并根據圖檔ID加載相應的UIImage對象,最後把圖檔ID及對應的UIImage封裝成FKPieceImage後傳回。

下面是這些工具函數所在的C檔案。

程式清單:codes/13/Link/Link/sources/util/FKImageUtil.h

<a href="http://s3.51cto.com/wyfs02/M01/12/35/wKioL1L9el7BbPyrAAOCo-pYZUQ534.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M00/12/34/wKiom1L9eoPzUAblAAPh3uw09dE903.jpg" target="_blank"></a>

<a href="http://s3.51cto.com/wyfs02/M02/12/35/wKioL1L9el-CuOnlAAMMj4o4IrA800.jpg" target="_blank"></a>

——————本文節選自《瘋狂ios講義(上)》 

瘋狂ios講義瘋狂連載之加載界面的圖檔

繼續閱讀