2012-09-02 44 views
0

我在我的Xcode項目6幅巴紐圖像(例如:image1.png,image2.png等)。我想創建一個方法,從這組6中返回一個隨機圖像,並將其分配給我的視圖的背景。我已經有一個返回隨機顏色類似的方法:返回隨機圖像中的iOS

+(UIColor *)randomColor 
{ 
CGFloat red= (CGFloat)random()/(CGFloat)RAND_MAX; 
CGFloat blue= (CGFloat)random()/(CGFloat)RAND_MAX; 
CGFloat green= (CGFloat)random()/(CGFloat)RAND_MAX; 
return [UIColor colorWithRed:red green:green blue:blue alpha:1.0]; 

} 

我實現文件調用此方法是這樣的:

UIColor *randomColor=[SoundDetail randomColor]; 
[self.view setBackgroundColor:randomColor]; 

如何修改此方法從我的列表中返回一個隨機圖像6並將其分配給我的背景視圖? 我正在使用Xcode 4.4.1進行通用iOS 5項目。

謝謝!

+2

arc4random_uniform比蘭特或隨機更好,僅供參考 –

回答

5
UIImage * randomImage = [ UIImage imageNamed:[ NSString stringWithFormat:@"image%u.png", 1+arc4random_uniform(6) ] ] ; 
+0

(假設你的圖像是image1.png ... image7.png) – nielsbot

0

假設你有UIImages在一個NSArray:

- (UIImage *)randomImage 
{ 
    NSArray *imagesArray = // array of images; 
    return [imagesArray objectAtIndex:(arc4random() % imagesArray.count]; 
} 

假設你有UIImage的名字在一個NSArray:

- (UIImage *)randomImage 
{ 
    NSArray *imagesArray = // array of image names; 
    NSString *imageName = [imagesArray objectAtIndex:(arc4random() % imagesArray.count]; 
    return [UIImage imageNamed:imageName]; 
}