-1

我有一个UITableView用于我的 SplitView 应用程序的 MasterView。

在选择任何行时,该行的颜色变为蓝色。我想把它改成黑色或深灰色。我怎样才能做到这一点?

谢谢。

4

3 回答 3

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

static NSString *CellIdentifier = @"CellIdentifier";
UITableViewCell *tableCell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (tableCell == nil) {
    tableCell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease] ;   

[tableCell setSelectionStyle:UITableViewCellSelectionStyleGray]; 
   }
 }

或者你也可以试试这个cellForRowAtIndexPath

if (indexPath.row == selectedIndex) 
{ 
    Cell.LblDynamicCell.textColor=[UIColor whiteColor];
    Cell.LblBackView.backgroundColor=[UIColor Black];
}
//LblDynamicCell,LblBackView objects  declare in cellViewController class

 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
 {
  selectedIndex = indexPath.row;
  [self.ResultTbl reloadData];

 }
于 2012-06-25T06:26:35.690 回答
2

以下枚举是为选择样式定义的 -

typedef enum {
    UITableViewCellSelectionStyleNone,
    UITableViewCellSelectionStyleBlue,
    UITableViewCellSelectionStyleGray
} UITableViewCellSelectionStyle;

因此,出于您的目的,您可以使用 -UITableViewCellSelectionStyleGray

于 2012-06-25T06:27:01.907 回答
0

您可以按如下方式更改所选单元格的颜色:

- (void)setSelected:(BOOL)selected animated:(BOOL)animated

    {
        [super setSelected:selected animated:animated];

        UIImageView *theImageView = [[UIImageView alloc] initWithImage:[UIImage imageName:@"table_selected_cell.png"]];
        self.selectedBackgroundView = theImageView;
        [theImageView release];
    }

更改您选择的颜色,其中 table_selected_cell.png 是您颜色的 2px 图像。

于 2012-06-25T06:27:15.633 回答