2014-09-14 6 views
0

У меня есть 6 базовых цветов, которые идут в порядке для каждой ячейки, созданной в следующем порядке:

• желтого
• темно-желтого
• красного
• темно-красного
• извести
• темная известь
Repeat цвет фона ячейки

У меня есть массив этих 6 цветов в этом порядке, чтобы использовать в качестве цвета фона для каждой ячейки, но если я хочу добавить новую ячейку и сделать ее 7 ячеек, я должен повторно добавить первый цвет поэтому ar луч выглядит следующим образом:

• желтого
• темно-желтого
• красного
• темно-красного
• извести
• темно известь
• желтого

есть способ сделать шесть цвета массива повторяются после создания шестой ячейки?

Спасибо за помощь!

+0

Существует много способов. Покажите код. Затем мы найдем способ, которым вы заказываете. Если у вас нет кода, сделайте некоторые. – dasdom

ответ

1

Вы можете использовать по модулю:

NSArray *colors = @[ Red, Green, Blue ]; 

colors[0 % colors.count]; // Red 
colors[1 % colors.count]; // Green 
colors[2 % colors.count]; // Blue 
colors[3 % colors.count]; // Red 
colors[4 % colors.count]; // Green 
// and so on... 
+0

Использование модуля работает как шарм! Спасибо! –

1

Вы можете использовать % оператор (модуль), что-то, как это будет делать

UIColor *currentColor = colorsArray[row % colorsArray.count]; 

где row является целым числом, которое представляет текущую строку номер и colorsArray - это ваш массив UIColor

Подробнее здесь о модуле оператора http://www.cprogramming.com/tutorial/modulus.html

+0

Спасибо! это код, который я использовал для его работы: var currentColor: UIColor = Constants.cellColorsArray(). objectAtIndex (indexPath.row% 6) как UIColor –

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