37.第三方(SDWebImage)的简单应用
2015-08-15 08:26
274 查看
将第三方SDWebImage导入到工程, 将原ARC的第三方加入到非MRC工程后,选择Build Phases然后在搜索框中收索SD,全部选中后回车,在弹出的框中添加-fobjc-arc
强制不报黄方法:#pragma clang diagnostic ignored “-Wignored-attributes”, 其中-Wignored-attributes为报黄原因
简单运用ViewController.m文件
强制不报黄方法:#pragma clang diagnostic ignored “-Wignored-attributes”, 其中-Wignored-attributes为报黄原因
简单运用ViewController.m文件
#import "ViewController.h" #import "UIImageView+WebCache.h"//网络缓存图片 #import "UIImage+GIF.h"//动画图片 @interface ViewController ()<UIActionSheetDelegate,UINavigationControllerDelegate,UIImagePickerControllerDelegate> @property(nonatomic,retain)UIImageView *imageview; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.imageview = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)]; self.imageview.backgroundColor = [UIColor yellowColor]; [self.view addSubview:self.imageview]; [_imageview release]; //加载网络图片,加载成功后会把图片缓存到本地,第二次就直接从本地取得 [self.imageview sd_setImageWithURL:[NSURL URLWithString:@"http://v.juhe.cn/movie/picurl?2583083"]]; //播放gif动画图片,图片名不要加.gif self.imageview.image = [UIImage sd_animatedGIFNamed:@"])EHD9MH4@C05%`J}K}O8J7"]; //创建一个actionSheet从本地相册选择图片 UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"选择图像" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"从相册中取", nil]; [actionSheet showInView:self.view]; [actionSheet release]; //天加一个长按手势把图片保存到本地相册 UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longPress:)]; self.imageview.userInteractionEnabled = YES;//交互一定要打开 longPress.minimumPressDuration = 2; [self.imageview addGestureRecognizer:longPress]; [longPress release]; }
#pragma mark UIActionSheet delegate - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex { if (buttonIndex == 0) { UIImagePickerController *picker = [[UIImagePickerController alloc] init]; //设置代理人,这个地方很特别,这个代理人需要执行两套协议,需要签订两个协议 picker.delegate = self; //允许进行编辑 picker.allowsEditing = YES; //控制器显示的方式(push,模态视图) //让他显示出来,用模态显示出来 [self presentViewController:picker animated:YES completion:^{ }]; } } - (void)longPress:(UILongPressGestureRecognizer *)longPress { //把图片写入到本地相册,判断手势当前状态,只有刚开始会保存图片 if (longPress.state == UIGestureRecognizerStateBegan) { UIImageWriteToSavedPhotosAlbum(self.imageview.image, nil, nil, nil); } } #pragma mark UIImagePickerController delegate //点击choose之后,可以选中当前的图片,并且返会让图片那显示在imageview上 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { //隐藏的效果就取消了,所以我们需要手动添加dismiss的方法,让相册消失 [self dismissViewControllerAnimated:YES completion:^{ }]; //从返回过来的字典对象info中提取image UIImage *image = info[UIImagePickerControllerEditedImage]; self.imageview.image = image; }
相关文章推荐
- 斐波那契数列多种实现方法
- 第八回(二)新年晚会艺压群芳 文理分科三人聚首
- Redis学习(4)-数据类型set和zset
- VC++ MFC子对话框建立与关闭
- UI-json解析网络数据
- CentOS - 安装中文输入法
- 3、ASP.NET MVC入门到精通——Entity Framework增删改查
- swift- tableView 的使用
- LeetCode(209) Minimum Size Subarray Sum
- 3.Python多线程程序Ctrl+C的优雅终止
- swift-tabbar的使用,页面之间的跳转
- Leetocde#38||Count and Say
- Arcgis for Javascript实现图
- UNIQUEIDENTIFIER列上的统计信息
- xoj1534(poj 1201)题解
- MongDB 的基本操作
- [NOIP2010]机器翻译
- 接受一个整数输入,显示所有小于或等于该数的素数
- 新oj 1534(poj 1201)
- [NOIP2010]乌龟棋