xcode自定义单元格不透明度无法在iOS 4上运行

时间:2012-09-17 11:51:59

标签: iphone objective-c ios xcode

我正在研究自定义单元格,当我在iOS 5模拟器上测试时一切正常,但是当我在iOS 4模拟器上检查时出现了问题。单元格背景图像的不透明度无效

这是在iOS 4上

http://i45.tinypic.com/fa0xl5.png enter image description here

这是在iOS 5上,我希望它在iOS 4中看起来像

enter image description here

我使用的方法是

-(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"TabelCellEb.png"]];
cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"TabelCell.png"]];}

并且在表背景的viewDidLoad中是

self.tableView.backgroundColor = [UIColor clearColor];
self.parentViewController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"TableBackground.png"]];

任何想法如何解决这个问题?

更新:这是我正在使用的单元格BG图像

enter image description here

它对它有效,并且%30不透明度

UPDATE2:

新图片

enter image description here enter image description here

现在,在用该代码替换后,背景图像随表一起上下移动

self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"TableBackground.png"]];

1 个答案:

答案 0 :(得分:0)

我解决了这个问题,

我删除了tableView willDisplayCell方法,并将此代码添加到tableView cellForRowAtIndexPath

UIImage *cellImage = [UIImage imageNamed:@"TabelCellMu.png"];
UIImageView *cellBackgroundImage = [[UIImageView alloc]initWithImage:cellImage];
cell.backgroundView = cellBackgroundImage;
cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"TabelCell.png"]];

在iOS 4和5中一切正常:)