若圖片檔案很大、而且要載入非常大量(上百張)的圖,那就不要使用[UIImage imageNamed:]語法。小張且多次加載一張圖片在用此語法即可。
因此,最好改用:
[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"檔名" ofType:@"副檔名"] ];
只是,如果是@2x的圖片,就無法自動取得,得自己動手寫。參考重載UIImage的方法以方便使用@2x圖片根據建議。
最好還要在didReceiveMemoryWarning這個程序釋放所有內存:
- (void)didReceiveMemoryWarning{
for (int i=0; i<TotalPage-1 ; i++) {
UIScrollView *page_1 = (UIScrollView*)[MainViewer objectAtIndex:i];
if ((NSNull *)page_1 != [NSNull null])
{
UIImageView *imgv = (UIImageView*)[page_1.subviews objectAtIndex:0];
imgv.image = nil;
[imgv removeFromSuperview];
imgv = nil;
}
}
}
寫一下類似這樣子的語法為佳。順便喊一句:我花了兩天才發現是imageNamed的問題(掩面哭)
沒有留言:
張貼留言
歡迎大家留言提問,我會答的都會盡力回答!
如果太久沒出現回應就是我又忘記回來看留言了TAT