2015-09-04 94 views
1

我在viewDidLoad這樣的一個數組,它包含UIColor將被用於填充表格視圖單元格背景顏色如何用數組中的顏色填充表格視圖單元格背景?

self.ColorArray = [NSArray arrayWithObjects: 
         @"[UIColor redColor];", 
         @"[UIColor redColor];", 
         @"[UIColor redColor];", nil]; 

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 
    cell.contentView.backgroundColor = [self.ColorArray objectAtIndex: indexPath.row % self.ColorArray.count]; 
} 

但這種崩潰掉給拋出這個錯誤:

-[__NSCFConstantString CGColor]: unrecognized selector sent to instance 0x137b28 - 
+0

檢查碼與該變形例self.ColorArray = [NSArray的arrayWithObjects: [的UIColor redColor], [的UIColor redColor], [的UIColor redColor],零]。 –

回答

0

要初始化使用字符串對象的顏色陣列

請嘗試向陣列添加UIColor對象

self.ColorArray = @[[UIColor whiteColor], @[UIColor redColor], @[UIColor grayColor]];

1

您試圖將顏色作爲字符串傳遞。

嘗試如通過:

self.ColorArray = [NSArray arrayWithObjects: 
    [UIColor redColor], 
    [UIColor redColor], 
    [UIColor redColor], nil]; 


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 

    cell.contentView.backgroundColor = [self.ColorArray objectAtIndex: indexPath.row % self.ColorArray.count]; 

} 
+0

好的,你能告訴我如何使用常量做這個用法嗎? –

+0

#define Color_tblRow1 [UIColor colorWithRed:0.518 green:0.11 blue:0 alpha:1];/*#841c00 */ –

+0

它不允許我將color_tblRow1添加到數組中 –

相關問題