IconDownloader.h
===============================
@interface IconDownloader : NSObject
{
NSString *imageURLString;
NSMutableData *activeDownload;
NSURLConnection *imageConnection;
}
@property (nonatomic, retain) NSString *imageURLString;
@property (nonatomic, retain) NSMutableData *activeDownload;
@property (nonatomic, retain) NSURLConnection *imageConnection;
- (void)startDownload;
- (void)cancelDownload;
@end
IconDownloader.m
=====================================
#import "IconDownloader.h"
@implementation IconDownloader
@synthesize activeDownload;
@synthesize imageConnection;
#pragma mark
- (void)dealloc
{
[activeDownload release];
[imageConnection cancel];
[imageConnection release];
[super dealloc];
}
- (void)startDownload
{
self.activeDownload = [NSMutableData data];
// alloc+init and start an NSURLConnection; release on completion/failure
NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:
[NSURLRequest requestWithURL:
[NSURL URLWithString:imageURLString]] delegate:self];
self.imageConnection = conn;
[conn release];
}
- (void)cancelDownload
{
[self.imageConnection cancel];
self.imageConnection = nil;
self.activeDownload = nil;
}
#pragma mark -
#pragma mark Download support (NSURLConnectionDelegate)
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
[self.activeDownload appendData:data];
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
// Clear the activeDownload property to allow later attempts
self.activeDownload = nil;
// Release the connection now that it's finished
self.imageConnection = nil;
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
// Set appIcon and clear temporary data/image
UIImage *image = [[UIImage alloc] initWithData:self.activeDownload];
self.activeDownload = nil;
[image release];
// Release the connection now that it's finished
self.imageConnection = nil;
}
@end
分享到:
相关推荐
在iOS应用开发中,导航栏(Navigation Bar)是用户界面不可或缺的一部分,它为用户提供了一种在应用程序中的导航方式。...参考链接提供的博客文章应该能提供详细的步骤和示例代码,帮助你更好地理解和实践这些概念。
总之,iOS8和iPhone6部件库是iOS开发者的重要参考资料和工具集合,它包含了适应新系统和设备变化所需的各类设计元素,有助于开发者快速、高效地构建出高质量的iOS应用。无论是新手还是经验丰富的开发者,都应该充分...
苹果官方提供的开发参考文档,涵盖了开发指南、示例代码以及教程等内容,是学习iPhone网页开发不可或缺的重要资源。 #### How to Build a Website for iPhone(如何建立一个基于iPhone的网站) 这是一篇详细的指南...
"缓存图片库 demo" 就是这样一个示例,它展示了如何在iPhone上使用缓存策略来存储和检索网络图片。在这个项目中,我们重点关注的是一个名为SDWebImage的开源库。 SDWebImage是一个流行的iOS图像管理库,由...
- **1.jpg**:这是一个示例图片,可能展示了如何自定义或设计一个吸引人的QQ在线图标,用户可以参考其风格或元素来创作自己的头像。 - **使用说明.txt**:这个文件详细解释了如何使用压缩包内的软件或工具,包括...
这个压缩包"仿iPhone风格对话框示例,Jar包及源码.zip"提供了一个很好的学习资源,它包含了实现这一功能的具体代码和相关资料,非常适合安卓开发的学习者,尤其是进行毕业设计或课程设计时使用。 首先,我们来探讨...
压缩包中的 "1-130424_1.jpg" 可能是一个截图或示例图片,展示了仿制的iPhone锁屏界面在Android设备上的实际效果。通过这张图片,我们可以看到UI设计的细节,包括滑动解锁、时间显示、日期、电量等元素,这些都是...
综上所述,《iPhone人机界面指南》是一本全面而深入的参考资料,对于希望为iPhone和iPod touch开发高质量应用的开发者来说至关重要。通过学习这本指南,开发者可以更好地理解如何创建既美观又实用的应用程序,从而...
开发环境为Mac OS X 10.7.5和Xcode 4.3.2,模拟器为iPhone 5.1,教程中的示例应用包含图片列表页和图片信息页,提供添加、删除、评分等功能。 在教程中,你会跟随作者的步骤,创建一个新的Xcode项目,设置项目的...
总的来说,"iPhone Bosch Guide Mockup"项目可能是为了创建一个逼真的Bosch产品应用界面模型,用于设计验证和开发参考。它涵盖了从设计到实现的整个过程,对于理解和优化用户体验至关重要。通过使用专业设计工具和...
Swift-CXPhotoBrower是一个基于Swift编程语言开发的图片浏览框架,它的设计灵感来源于微博和微信中的图片查看...在使用CXPhotoBrower-master压缩包时,开发者可以参考示例代码或者文档,快速上手并进行实际项目开发。
【CTAssetsPicker】是一款在iOS应用开发中常用的图片选择器组件,它允许用户进行多项选择,以便在应用程序中实现类似Instagram或微信等社交平台的图片上传功能。CTAssetsPickerController是这个组件的核心类,提供了...
这对于初学者来说非常有用,因为它们提供了快速上手的参考。 4. **文档**:可能包括README文件或其他形式的文档,提供了关于如何安装、配置和使用控件的说明。这些文档通常会解释库的依赖、许可信息以及任何特别...
Cocos2d for iPhone 0.99 版本在当时是较新的一个版本,提供了许多功能,如精灵(Sprites)、动作(Actions)、层(Layers)、场景(Scenes)等,让开发者可以快速构建游戏逻辑和视觉效果。 1. **精灵(Sprites)**...
10.jquery仿LightBox图片盒子单击逐渐放大的图片展示的插件下载 11.jquery仿Lightbox的插件jQuery UI.ariaLightbox点击图片放大显示插件下载 12.jQuery仿动感flash自动滚动图片切换广告插件 13.jQuery仿新浪...
"Android 仿iphone 气泡短信 DEMO源码.rar" 这个标题表明,这是一个关于Android开发的项目,其主要目的是模仿iPhone的气泡式短信界面。气泡短信是iOS系统中一种典型的对话界面设计,通过不同颜色和方向的气泡来区分...
- **参考其他资源**:虽然本书已经很全面,但仍建议参考Cocos2d官方文档和其他相关资料,以获取更多实用的信息和技术支持。 - **参与社区交流**:加入Cocos2d社区,与其他开发者交流心得,解决开发过程中遇到的问题...
AppCan提供丰富的示例代码和文档供参考。 - **调试和测试**: 使用AppCan模拟器进行应用功能和界面展示的测试,同时可通过**AppCan Player**在真机上测试应用性能。 - **发布**: 应用测试完成后,开发者可将其发布给...
在这个压缩包中,我们看到的"jiaoben18156"可能是一个脚本文件或者代码示例,用于模拟iPhone手机上的QQ官网下载页面。 在描述中提到的"基于jquery实现的iphone手机样式幻灯片切换效果"是指使用jQuery库来创建一种...
3. **Documentation**:文档目录,可能包含了如何使用FlagKit的说明、API参考、示例代码等内容,帮助开发者快速上手。 4. **Examples**:示例项目,提供了一个实际的应用实例,展示了如何在iOS项目中集成和使用这些...