我正在使用UITableViewCell开发iOS App。
我想让单元格中的图像在图像底部附近慢慢变暗。
我写下以下内容。 但是,它根本不起作用。
你能告诉我如何解决这个问题吗?
※我使用SDWebImage(https://github.com/rs/SDWebImage)进行异步图像下载。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *cellIdentifer = @"myCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifer forIndexPath:indexPath];
if(cell==nil){
cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifer];
}
UIImageView *NewsImage = (UIImageView *)[cell viewWithTag:1];
NSURL *imageURL = [NSURL URLWithString:imageUrlString];
UIImage *placeholderImage = [UIImage imageNamed:@"placeImage.jpg"];
CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = NewsImage.frame;
gradient.colors = @[(id)[[UIColor clearColor] CGColor],
(id)[[UIColor blackColor] CGColor]];
[NewsImage.layer insertSublayer:gradient atIndex:0];
[NewsImage setImageWithURL:imageURL placeholderImage:placeholderImage];
return cell;
}
答案 0 :(得分:0)
我认为问题是:
NSURL *imageURL = [NSURL URLWithString:imageUrlString];
“imageURLString”
中的内容如果您只是想在项目中引入图像文件,可以尝试:
NSURL * url = [[NSBundle mainBundle] URLForResource:@“imageFileName”withExtension:@“ext”];
答案 1 :(得分:0)
要检查的一些事项:确保imageURLString
它实际上是一张图片。
其次,将setImageWithURL
(已弃用)更改为sd_setImageWithURL
。同时将gradient.frame
更改为NewsImage.bounds
。如果仍然无效,请尝试在SDWebImage语句下移动渐变片段。