做第一个项目时,有个版块的个人信息的编辑涉及到头像修改,老大说项目里有通用的代码,让我自己去找。总算找到,搞了许久才弄好,看来理解能力还需要提高啊!!

 #pragma mark- 修改头像上传后保存
-(void)uploadMyIco
{
//NSString *fileName = @"myico.jpg";
UIImage *image1 = self.headImageVie.image; NSData *data;
float v = image1.size.width / ;
CGSize newSize = CGSizeMake(image1.size.width / v, image1.size.height / v);
UIGraphicsBeginImageContext(newSize);
[image1 drawInRect:CGRectMake(, , newSize.width, newSize.height)];
UIImage *scaleImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
data = UIImageJPEGRepresentation(scaleImage, 0.8);
UIImage *image = [UIImage imageWithData:data];
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil );
NSString *fileNamess =[self createImgFileName];
NSString* filePath = [NSTemporaryDirectory() stringByAppendingPathComponent:fileNamess];
[data writeToFile:filePath atomically:NO];
NSMutableArray *imageArray = [[NSMutableArray alloc]init];
[imageArray addObject:[NSDictionary dictionaryWithObject:filePath forKey:@"file"]];
self.request = nil;
requestType = ;
self.request = [UPRequest uploadPhotoInfo1:@"member/updatePhoto" image:imageArray keyName:@"file" delegate:self params:nil];
[SKProgressView ShowHudInView:self.view withTag:];
} - (NSString *)createImgFileName
{
static int seedNum = ;
if(seedNum >= )
seedNum = ;
seedNum++; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyyMMddHHmmss"]; NSString *currentDateStr = [dateFormatter stringFromDate:[NSDate date]];
// [dateFormatter release]; NSString *file = [NSString stringWithFormat:@"temppics%@%03d.jpg", currentDateStr, seedNum];
return file;
}

部门logo修改是是参照写的〜

 #pragma mark- 图像上传保存
- (void)uploadDepartmentLogo//上传部门logo图片
{
NSString *fileName = @"departMentLogo.jpg";
UIImage *image1 = self.headImageView.image;
NSData *data;
if ( UIImagePNGRepresentation(image1) == nil )
{
data = UIImageJPEGRepresentation(image1, );
fileName = @"departMentLogo.png";
} else {
data = UIImagePNGRepresentation(image1);
fileName = @"departMentLogo.jpg";
}
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:];
NSString *fullPathToFile = [documentsDirectory stringByAppendingPathComponent:fileName];
[data writeToFile:fullPathToFile atomically:NO]; NSMutableArray *array = [NSMutableArray arrayWithCapacity:];
[array addObject:[NSDictionary dictionaryWithObject:[NSNumber numberWithInteger:] forKey:@"type"]];
[array addObject:[NSDictionary dictionaryWithObject:self.deptId forKey:@"deptId"]]; NSMutableArray *imageArray = [[NSMutableArray alloc]init];
[imageArray addObject:[NSDictionary dictionaryWithObject:fullPathToFile forKey:@"file"]];//deptHead self.request = nil;
requestType = ;
self.request = [UPRequest uploadPhotoInfo1:@"dept/uploadPhoto" image:imageArray keyName:@"file" delegate:self params:array];
}

ios-上传图片到后台的更多相关文章

  1. iOS 直播-实现后台录音并推流

    iOS 直播-实现后台录音并推流 从一个月前开始开始接收公司的直播类app.到今天为止测试都已接近尾声,但是产品哥哥加了一个要求,就是在app进入后台后也实时保证录音并且推流. 刚听到这个的时候我也是 ...

  2. iOS开发小技巧--iOS程序进入后台运行的实现

    iOS程序进入后台运行的实现 视频中看到老师用的iOS7,代码中有开启timer,无限请求数据的功能,但是切换到后台,代码就不打印了 自己用的iOS9,进入后台还是可以打印的,再次进入前台也可以正常运 ...

  3. ios xmpp开发应用后台模式接收聊天信息处理方案

    ios xmpp开发应用后台模式接收聊天信息 最近在使用xmppframwork来实现一个聊天应用,碰到了一个问题,应用进入后台以后,就接收不到消息了: 怎么样才能使应用被切到后台时,应用中的网络连接 ...

  4. iOS程序进入后台后仍运行定时器NSTimer

    由于本应用需要在应用进入后台后还要进行定时的检测功能,因此对于我来说怎样让APP在进入后台后 保持运行状态是比较大的需求.然后在iOS系统中是很难实现的,不管是 通过 音频还是 定位系统,我查找了一些 ...

  5. 实现iOS长时间后台的两种方法:Audiosession和VOIP(转)

    分类: Iphone2013-01-24 14:03 986人阅读 评论(0) 收藏 举报 我们知道iOS开启后台任务后可以获得最多600秒的执行时间,而一些需要在后台下载或者与服务器保持连接的App ...

  6. ios播放声音中断后台音乐的问题

      今天遇到一个ios播放声音中断后台音乐的问题,在我的app中如果调用AVAudioSession 播放完声音,后台的qq音乐偶尔不能恢复,而网易云音乐一次都不能恢复播放,研究了一下AVAudioS ...

  7. 实现iOS长时间后台的两种方法:Audiosession和VOIP

    http://www.cocoachina.com/applenews/devnews/2012/1212/5313.html 我们知道iOS开启后台任务后可以获得最多600秒的执行时间,而一些需要在 ...

  8. 使用WebUploader客户端批量上传图片,后台使用springMVC接收实例

    使用WebUploader客户端批量上传图片,后台使用springMVC接收实例 我是搞Java后台的,因为最近主管让用webUploader写客户端,但是在网上找了很多,能够复制就能用的并没有几个, ...

  9. IOS上传图片方法类

    IOS上传图片方法类   iPhone开发中遇到上传图片问题,找到多资料,最终封装了一个类,请大家指点,代码如下 // // RequestPostUploadHelper.h // demodes ...

  10. android系统和ios系统是如何实现推送的,ios为什么没有后台推送

    ios系统为什么没有后台推送? iOS 为了真正地为用户体验负责,不允许应用在后台活动.有了这个限制,但是对于终端设备,应用又是有必要“通知”到达用户的,随时与用户主动沟通起来的(典型的如聊天应用). ...

随机推荐

  1. Linux md5sum 的用法

    MD5 算法常常被用来验证网络文件传输的完整性,防止文件被篡改.MD5 全称是报文摘要算法,此算法对任意长度 的信息逐位计算,产生一个二进制长度为 128 位(十六进制长度 32 位)的报文摘要,不同 ...

  2. 浅谈JS中的原型对象和原型链

    我们知道原型是一个对象,其他对象可以用它实现属性继承,除了prototype,又有__proto__ 1. prototype和__proto__的区别 prototype是函数才有的属性      ...

  3. Codeforces Round #FF (Div. 2) D. DZY Loves Modification 优先队列

    D. DZY Loves Modification time limit per test 2 seconds memory limit per test 256 megabytes input st ...

  4. Android 虹软2.0人脸识别,注册失败问题 分析synchronized的作用

    人脸识别需要init初始化(FaceServer中),离开时需要unInit销毁:当一个含有人脸识别的界面A跳向另一个含有人脸识别的界面B时,由于初始化和销毁都是对FaceServer类加锁(sync ...

  5. 查看CPU温度

    因为不喜欢鲁大师,所以检索看有没有别的软件. 1)先是找到了aida64, 结果好像是要付费的,就没装. 2)因为自己也就想看cpu温度,于是寻思自己编程解决. 找到了下面的文章. 不但介绍了怎么编程 ...

  6. [Database] Oracle 中的where 可以后接group by

    SELECT e.DEPTNO,COUNT(e.EMPNO) FROM emp e WHERE e.DEPTNO=10 GROUP BY e.DEPTNO

  7. Web版记账本开发记录(七)

    经过不懈的努力,虽然开发出来的还有瑕疵,但今后我会继续努力的.

  8. JAVA多线程 总结

    1. Thread 和 Runnable java.lang.Thread 类的实例就是一个线程但是它需要调用java.lang.Runnable接口来执行,由于线程类本身就是调用的Runnable接 ...

  9. vscode之快速生成vue模板

    文件-首选项-用户代码片段-搜索“vue”点击进入vue.json 复制这个片段 { "Vue component": { "prefix": "vu ...

  10. javascript的event loop事件循环

    javascript的event loop事件循环 这是今天一个朋友发给我的一个面试题, 感觉还挺有意思的, 写个博客以供分享 先看看这个面试题目: 观察下面的代码,写出输出结果 console.lo ...