gpt4 book ai didi

iphone - Objective-C UImage imageWithData问题

转载 作者:行者123 更新时间:2023-11-28 23:16:05 25 4
gpt4 key购买 nike

我在从数据生成的 ImageView 中显示图像时遇到问题。

我的程序运行如下:

  1. 用户从 UITableView 中选择一行。
  2. 选择后,将生成一个新 View (事件描述),并向其传递 3 个 NSString 和一个 NSData 对象。
  3. 此数据显示在 View 中,但是还会生成一个线程以将 NSData 转换为图像并将其显示为没有显示描述 View 时会有轻微延迟。

这段代码在模拟器上运行良好,但是当我在我的 iPhone 上运行它并选择一行时,第一个选择运行正常,然后所有相应的选择在显示图像时都有明显的延迟..

这是我的代码:

    - (void)viewDidLoad {
[super viewDidLoad];

//Display the selected events data
name.text = eventName;
date.text = eventDate;
description.text = eventDescription;

//Set the title of the navigation bar
self.navigationItem.title = eventName;

/* Operation Queue init (autorelease) */
NSOperationQueue *queue = [NSOperationQueue new];

/* Create our NSInvocationOperation to call loadDataWithOperation, passing in nil */
NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self
selector:@selector(loadDataWithOperation)
object:nil];

/* Add the operation to the queue */
[queue addOperation:operation];
[operation release];
}

//Threaded operation
- (void) loadDataWithOperation {
//Set the event image
UIImage *img = [UIImage imageWithData: eventImageURLData];

image.image = img;
}

有人知道是什么原因造成的吗?

谢谢,

jack

最佳答案

模拟器没有内存限制,因此它很少标记内存不足问题。因此,您正在泄漏 NSOperationQueue。我看到您已将其标记为自动释放,但没有看到自动释放消息。你应该解决这个问题。除此之外,您应该将图像更新代码发送到主线程。

关于iphone - Objective-C UImage imageWithData问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6316639/

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