Objective c 是否设置活动指示器,直到从服务器加载映像?
我是iOS开发新手,所以请耐心等待。 我正在使用表格视图和滚动视图制作照片网格。 我的问题是如何加载活动指示器,直到图像从服务器下载,然后显示图像并删除活动指示器Objective c 是否设置活动指示器,直到从服务器加载映像?,objective-c,ios,cocoa,ipad,Objective C,Ios,Cocoa,Ipad,我是iOS开发新手,所以请耐心等待。 我正在使用表格视图和滚动视图制作照片网格。 我的问题是如何加载活动指示器,直到图像从服务器下载,然后显示图像并删除活动指示器 我试图远离第三方库,因为我想了解它是如何工作的。在视图上放置一个活动指示器(通过界面生成器或手动)。将属性设置为“不设置动画时隐藏” 执行服务器调用时,调用[activityIndicator startAnimating](IBOutlet属性)。 返回实际图像时,调用[activityIndicator Stop Animatin
我试图远离第三方库,因为我想了解它是如何工作的。在视图上放置一个活动指示器(通过界面生成器或手动)。将属性设置为“不设置动画时隐藏” 执行服务器调用时,调用[activityIndicator startAnimating](IBOutlet属性)。 返回实际图像时,调用[activityIndicator Stop Animating]。停止时,它将自动隐藏 您还可以使用iPhone/Pad状态栏中的活动指示器。为此,请使用[[UIApplication sharedApplication]SetNetworkActivityIndicator Visible:YES]; 设置为“否”以隐藏它。。。(显然) 请看一个图像的示例。
您将停止didReceiveData函数中的活动指示器。在视图中放置活动指示器(通过界面生成器或手动)。将属性设置为“不设置动画时隐藏” 执行服务器调用时,调用[activityIndicator startAnimating](IBOutlet属性)。 返回实际图像时,调用[activityIndicator Stop Animating]。停止时,它将自动隐藏 您还可以使用iPhone/Pad状态栏中的活动指示器。为此,请使用[[UIApplication sharedApplication]SetNetworkActivityIndicator Visible:YES]; 设置为“否”以隐藏它。。。(显然) 请看一个图像的示例。 您将停止didReceiveData函数中的活动指示器。 在这里,您可以找到可用于下载图像的JMImage缓存文件 您必须更改UIImageView+JMImageCache.m文件
if(i) {
dispatch_async(dispatch_get_main_queue(), ^{
safeSelf.jm_imageURL = nil;
safeSelf.image = i;
[safeSelf setNeedsLayout];
[safeSelf setNeedsDisplay];
if (completionBlock) {
completionBlock(i).
}
});
然后使用方法
enter code here
{
[yourImageView setImageWithURL:[NSURL URLWithString:urlString]占位符:[UIImage ImageName:@“占位符”]完成块:^(UIImage*image)
{
//删除此处添加的活动指示器
}failureBlock:^(NSURLRequest *req,NSURLResponse *resp,NSError *error)
{
// show error message
}];
}
在这里,您可以找到可用于下载图像的JMImage缓存文件
您必须更改UIImageView+JMImageCache.m文件
if(i) {
dispatch_async(dispatch_get_main_queue(), ^{
safeSelf.jm_imageURL = nil;
safeSelf.image = i;
[safeSelf setNeedsLayout];
[safeSelf setNeedsDisplay];
if (completionBlock) {
completionBlock(i).
}
});
然后使用方法
enter code here
{
[yourImageView setImageWithURL:[NSURL URLWithString:urlString]占位符:[UIImage ImageName:@“占位符”]完成块:^(UIImage*image)
{
//删除此处添加的活动指示器
}failureBlock:^(NSURLRequest *req,NSURLResponse *resp,NSError *error)
{
// show error message
}];
}您应该指定如何从服务器获取映像。如果使用nsconnection,则其中一个代理具有received response delegate方法。您应该指定如何从服务器获取映像。如果使用nsconnection,则其中一个代理具有received response delegate方法。