gpt4 book ai didi

ios - 为表格 View 单元格设置动画 UIImageView

转载 作者:行者123 更新时间:2023-11-28 20:01:50 24 4
gpt4 key购买 nike

我正在尝试为“表格 View 单元格”中的 UIImageview 设置动画,但图像从未显示。这是我尝试使用的代码。

   - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];
if (cell == nil)
{
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
cell.textLabel.font = [UIFont systemFontOfSize:16.0];
}

if (cell)
{
cell.textLabel.text = [titleArray objectAtIndex:indexPath.row];
cell.textLabel.textColor = [UIColor darkGrayColor];

UIImage *musicOne = [UIImage imageNamed:@"music1.png"];
UIImage *musicTwo = [UIImage imageNamed:@"music2.png"];
UIImage *musicThree = [UIImage imageNamed:@"music3.png"];

NSArray *imagesArray = [NSArray arrayWithObjects:musicOne, musicTwo, musicThree, nil];

if (indexPath.row == 0)
{
cell.imageView.animationImages = imagesArray;
cell.imageView.animationDuration = 1.0f;
cell.imageView.animationRepeatCount = 0;
[cell.imageView startAnimating];
}
}

return cell;
}

如果我不尝试用多张图片制作动画,而只在图片 View 中使用一张图片,则图片会显示在单元格中。

cell.imageView.image = [imagesArray objectAtIndex:0];

最佳答案

cell.imageViewimage 属性也需要和 animationImages 一起设置,否则 UITableViewCell 会什么都不显示。

为了提高应用程序的性能并节省内存,请执行以下操作:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
cell.imageView.image = [UIImage imageNamed:@"music1.png"];
return cell;
}

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {

UIImage *musicOne = [UIImage imageNamed:@"music1.png"];
UIImage *musicTwo = [UIImage imageNamed:@"music2.png"];
UIImage *musicThree = [UIImage imageNamed:@"music3.png"];
NSArray *imagesArray = @[musicOne, musicTwo, musicThree];

[cell.imageView setAnimationImages:imagesArray];
cell.imageView.animationDuration = 1.0f;
[cell.imageView startAnimating];
}

-(void)tableView:(UITableView *)tableView didEndDisplayingCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
[cell.imageView stopAnimating];
[cell.layer removeAllAnimations];
}

关于ios - 为表格 View 单元格设置动画 UIImageView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23680704/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com