2013-12-15 3 views
0

Я хотел бы знать, как я могу построить динамический UItable со случайным фоновым изображением? например, у меня есть 6 изображений, называемых back1.png, back2.png, back3.png ...... back6.png.случайное фоновое изображение в UITableviewCell

Какой код должен быть добавлен в «cellForRowAtIndexPath»

Я могу только последовательно назначать каждый ячейки с определенным изображением, как следовать,

if(indexPath.row == 0){ 
    newView.backgroundColor = [UIColor [UIColor colorWithPatternImage:[UIImage imageNamed:@"lightwood1.jpg"]]; 
} 
if(indexPath.row == 1){ 
    newView.backgroundColor = [UIColor [UIColor colorWithPatternImage:[UIImage imageNamed:@"lightwood2.jpg"]]; 
} 
if(indexPath.row == 2){ 
    newView.backgroundColor = [UIColor [UIColor colorWithPatternImage:[UIImage imageNamed:@"lightwood3.jpg"]]; 
} 

Но как я могу просто изменить его в случайном порядке с неограниченным строки в UITableView?

+2

'[NSString stringWithFormat: @" lightwood% d ", arc4random()% 6]' – johnMa

ответ

1

попробовать это ...

int lowerBound = 1; 
int upperBound = 7; 
int randomValue = lowerBound + arc4random() % (upperBound - lowerBound); 

newView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:[NSString stringWithFormat:@"lightwood%d.jpg", randomValue]]]; 
+0

Сообщение об ошибке: слишком много аргументов для вызова метода, ожидаемого 1, имеют 2. Что это значит и как решить? Спасибо – Clarence

+0

Извините за эту ошибку, проверьте мой обновленный ответ. –

+0

Большое спасибо! Оно работает! – Clarence

0

Попробуйте это, Может быть помочь полный

newView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:[NSString stringWithFormat:@"lightwood%d.jpg", indexPath.row]]]; 

indexPath.row увеличить один за другим, и ваши изображения имя также растет один за другим ... .

+0

он не будет работать в этом случае, потому что есть только 6 изображений, и когда 'indexPath.row' вернет терр, чем 6, тогда ваш код упадет, чтобы загрузить изображение. –

+0

У меня есть другой способ, которым вам нужно управлять этим, используя условие If else –

+0

Как вы управляете случайной функцией, используя условие else? не могли бы вы уточнить ?? –

Смежные вопросы