当前位置:  编程技术>移动开发
本页文章导读:
    ▪从初学者到测试架构师:一个测试工程师的成长日记        从菜鸟到测试架构师:一个测试工程师的成长日记 《从菜鸟到测试架构师:一个测试工程师的成长日记》 基本信息 作者: 《从菜鸟到测试架构师》编委会 出版社:电子工业出版社 ISBN:9787121.........
    ▪ .9.png格式图片的打造与使用        .9.png格式图片的制作与使用 http://www.eoeandroid.com/thread-240645-1-1.html 转载: .9.png格式图片的制作与使用   http://www.cnblogs.com/vanezkw/archive/2012/07/19/2599092.html ......
    ▪ 惯用代码整理       常用代码整理 1.判断邮箱格式是否正确的代码//利用正则表达式验证-(BOOL)isValidateEmail:(NSString *)email{NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";NSPredicate *emailTest = [NSPredicate pred.........

[1]从初学者到测试架构师:一个测试工程师的成长日记
    来源: 互联网  发布时间: 2014-02-18
从菜鸟到测试架构师:一个测试工程师的成长日记
《从菜鸟到测试架构师:一个测试工程师的成长日记》
基本信息
作者: 《从菜鸟到测试架构师》编委会
出版社:电子工业出版社
ISBN:9787121193958
上架时间:2013-3-29
出版日期:2013 年4月
开本:16开
页码:396
版次:1-1
所属分类:计算机 > 电子商务与计算机文化 > 综合
计算机 > 软件与程序设计 > 综合 > 高级程序语言设计
更多关于 》》》《从菜鸟到测试架构师:一个测试工程师的成长日记》
内容简介
计算机书籍
  《从菜鸟到测试架构师:一个测试工程师的成长日记》以新人小艾为主角,从小艾的视角出发展开讨论。小艾是一位新入职的菜鸟测试工作者,他面对着测试这一未知的领域,在导师的悉心栽培和指导下走进了测试工作。在这个过程中,他经历了测试的各个方面和阶段,积攒下丰富的理论和实践经验,经过各种学习和历练,终于成长为一名测试架构师。小艾的成长经历贯穿了测试的各个领域,理论与实践并重,将测试以一个完整的体系展现给读者。
   《从菜鸟到测试架构师:一个测试工程师的成长日记》在内容编排上力求理论联系实际,每一个章节都通过小艾的学习工作过程展开讨论,通过实践进行理论提炼。在各个章节的结尾,以小艾学习笔记的方式总结论述该章节,帮助读者更好地理解和掌握测试理论及方法。
   《从菜鸟到测试架构师:一个测试工程师的成长日记》适合从事软件测试及软件质量管理的工程人员、企业it主管,以及高校软件测试、软件质量及其他计算机相关专业的教师和学生阅读。
   希望本书能够帮助读者形成测试理论及体系认识,帮助测试工作者更好地展开测试工作。
目录
《从菜鸟到测试架构师:一个测试工程师的成长日记》
第1章 上班第一天,新人培训1
1.1 测试专家的第一步1
1.1.1 我是菜鸟1
1.1.2 苦练基本功4
1.1.3 培养专业技能9
1.2 开发团队做的远不仅是开发13
1.2.1 术业有专攻13
1.2.2 好软件由测试决定17
1.2.3 测试也有大学问18
1.3 从专家到高手25
1.3.1 像外行一样思考,像专家一样实践26
1.3.2 工欲善其事必先利其器28
1.3.3 从拿来主义到创新31
1.3.4 测试的广度和深度32
1.3.5 无招胜有招33
1.4 职业生涯的考虑——技术还是管理35
1.4.1 测试工程师的技术发展路线35
1.4.2 与人打交道——管理测试团队37
1.5 学习笔记——测试入门之小艾观38
.第2章 万事开头难:软件从安装开始39
2.1 软件,是装出来的40
2.1.1 安装测试概念解读40
2.1.2 测试之初体验——一份手册,n台机器,一堆软件41
2.2 全面撒网,重点排查43
2.2.1 选择测试配置43
2.2.2 找出测试场景46
2.2.3 组合出测试用例48
2.3 安装测试质量之大观48
2.3.1 产品安装49
2.3.2 产品卸载52
2.4 客户的圣经——用户手册验证53
2.4.1 一般验证方法54
2.4.2 文档审阅流程54
2.5 引进先进设备——安装自动化测试55
2.5.1 效率的提高从自动化开始55
2.5.2 自动化测试的实现56
2.6 学习笔记——安装测试之小艾观60
参考资料:60
第3章 发现新方法:快速分发新的测试版本61
3.1 构建的过程62
3.1.1 构建原材料的管理——代码的管理63
3.1.2 构建的环境65
3.1.3 整体构建和部分构建67
3.1.4 自动化的构建69
3.1.5 模拟翻译构建70
3.1.6 构建的范围和频率71
3.2 构建测试(build verification test – bvt)73
3.2.1 构建测试的配置(bvt configuration)75
3.2.2 构建测试的用例(bvt scenarios)75
3.2.3 自动化的构建测试76
3.2.4 构建测试的环境再利用76
3.3 静态测试77
3.3.1 静态测试的作用及环境78
3.3.2 自动化的静态测试78
3.3.3 静态测试的频率79
3.4 不间断的构建与测试(continuous integration)79
3.5 学习笔记——小艾的构建测试观80
参考资料:81
第4章 把缺陷扼杀在摇篮里:开发人员的测试82
4.1 怪物来自缺陷,开发人员也需要做测试82
4.1.1 深入摇篮内部83
4.1.2 吃一堑长一智,走出单元测试的误区84
4.1.3 潘多拉盒子出来怪物——开发人员眼中的测试89
4.2 单元测试测点啥,怎么测91
4.2.1 摇篮有多大——单元测试的范围91
4.2.2 有规范、有步骤地捉虫子——单元测试的流程92
4.2.3 来一套杀虫装备:单元测试的工具94
4.2.4 单元测试够不够,我来把把关99
4.3 测试还能驱动开发(tdd)101
4.3.1 什么是测试驱动开发,测试驱动的工作流程102
4.3.2 测试驱动开发好处多105
4.4 学习笔记——单元测试之小艾观107
参考资料:108
第5章 黑色盒子:打着手电抓虫子110
5.1 黑色的盒子里面有什么110
5.1.1 小艾的功能测试第一课——准备手电111
5.1.2 导师对功能测试的深入浅出的解读117
5.1.3 参与实际测试执行,编写自动化测试脚本130
5.1.4 找到了第一条虫子132
5.1.5 手记——执行高手133
5.2 如何把黑盒子分块134
5.2.1 如何精准找寻某一种虫子——分而治之136
5.2.2 客户的反馈——虫子依然存在吗136
5.3 对黑盒子的全方位照明137
5.3.1 找到了小盒子间的虫子——合而治之137
5.3.2 手记——策略高手139
5.4 功能测试之百种变身141
5.4.1 回归测试141
5.4.2 客户化环境下的测试142
5.4.3 随机测试(adhoc test)143
5.4.4 可访问性的测试(accessibility test)144
5.4.5 全球化测试(globalization test)144
5.4.6 其他之林林总总145
5.5 学习笔记——功能测试之小艾观146
参考资料:147
第6章 大促带来的灾难:究竟能支撑多少访问量148
6.1 洪水般的访问量——初识性能测试148
6.1.1 一旦宕机,流失的就是白花花的营业额148
6.1.2 假如我是甲方——关于性能客户都关注些什么149
6.2 让访问来得更猛烈些吧——模拟客户的访问行为151
6.2.1 更真实更高效的模拟——自动化的性能测试151
6.2.2 春节大促——压力测试153
6.2.3 日常的访问量——正常的响应时间155
6.2.4 保证长时间的稳定运营——可靠性测试156
6.2.5 客户的成长不比产品慢: 想象不到的数据量——可扩展性测试157
6.2.6 摸爬滚打过来还得挨一刀——产品经历性能测试158
6.3 像fbi那样缜密——全面监视系统的一举一动167
6.3.1 操作系统的监视169
6.3.2 应用服务器的监视170
6.3.3 数据库的监视171
6.4 大海捞针也要讲究策略——性能问题的分析定位179
6.4.1 磨刀不误砍柴功——了解性能问题定位的一般策略180
6.4.2 越忙越乱——高并发访问量下的出错率182
6.4.3 越跑越慢——吞吐量下降问题185
6.4.4 穿了小两号的鞋——通过参数调优能解决的问题187
6.5 学习笔记——性能测试之小艾观189
参考资料:189
第7章 更新换代,重装上阵191
7.1 永葆青春活力——迁移191
7.1.1 企业级应用架构192
7.1.2 企业级应用迁移内容及主要步骤194
7.1.3 企业级应用迁移中客户关注的问题196
7.2 迁移测试196
7.2.1 垂直迁移测试方法(vmtm)197
7.2.2 水平迁移测试方法(hmtm)203
7.2.3 其他迁移测试内容207
7.3 迁移测试的计划和实践208
7.3.1 如何选择迁移测试平台组合和测试用例209
7.3.2 迁移测试的一个具体场景212
7.4 学习笔记——迁移测试之小艾观214
参考资料:214
第8章 假如我是客户:面目全非脚与还我漂漂拳215
8.1 其实,我是一个演员——如何扮演客户216
8.1.1 我知道,我不知道:只知道客户能够知道的216
8.1.2 我做,我不做:做客户会做的218
8.1.3 我想,我继续想:客户会怎么想221
8.2 面目全非脚——狠下心来改产品222
8.2.1 第一脚,学会开发222
8.2.2 第二脚,部署代码231
8.2.3 第三脚,联合测试237
8.3 还我漂漂拳——让产品对用户更友好238
8.3.1 协助完善产品设计238
8.3.2 客户化联合测试工作的痛苦和239
8.3.3 撰写详细易读的客户化教程240
8.4 学习笔记——客户化测试之小艾观241
参考资料:242
第9章 黎明之前最后的冲刺:成品测试243
9.1 产品包装成金蛋,手握光碟抓虫子243
9.1.1 成品测试全体总动员243
9.1.2 协同作战——成品测试特性245
9.1.3 取舍之间——测试范围和策略246
9.1.4 争分夺秒——成品测试周期248
9.2 黎明前的黑暗——漏网之虫250
9.2.1 老案例生新虫子251
9.2.2 艰难抉择——漏网之虫综合分析及灭虫策略252
9.3 金蛋闪亮登场254
9.3.1 成品测试胜利退出254
9.3.2 质量检测报告之大观256
9.3.3 趁热打铁总结经验教训259
9.3.4 贯穿始终的缺陷分析261
9.4 学习笔记——成品测试之小艾观269
参考资料:270
第10章 缝缝补补又三年271
10.1 补丁包测试简介271
10.1.1 目标驱动的补丁包测试272
10.1.2 补丁包测试在产品生命周期中的意义273
10.1.3 补丁包需涵盖的内容及来源274
10.2 产品补丁包测试的基本流程275
10.2.1 确定补丁包里需要包含的内容277
10.2.2 制定好计划是关键280
10.2.3 执行开始前要做好准备工作285
10.2.4 测试开始及状态跟踪286
10.2.5 补丁包成功发布288
10.3 其他的流程和考虑因素288
10.3.1 缺陷分析要做到位289
10.3.2 补丁包测试的自动化考虑291
10.4 学习笔记——补丁包测试之小艾观293
第11章 一遍又一遍:自动化的好处多294
11.1 软件测试的工业化——自动化294
11.2 自动化的利与弊295
11.3 武功入门口诀——自动化脚本的关键297
11.3.1 有效发现缺陷298
11.3.2 详细的错误日志299
11.3.3 良好的可读性300
11.3.4 运行独立性与可重复性302
11.4 修炼进阶——开发适合自己的自动化框架303
11.4.1 需求分析——我们需要什么304
11.4.2 环境准备自动化——将自动化进行到底305
11.4.3 实现需要考虑的问题306
11.4.4 多台机器同时跑——自动化效率更上一层楼307
11.5 收发自如——灵活的自动化测试策略307
11.5.1 越早越好?——自动化脚本开发的时间307
11.5.2 让软件健康成长——回归测试中的自动化309
11.5.3 永远的录制/回放?——自动化方式的选取310
11.5.4 论持久战——测试脚本的配置管理311
11.5.5 拒绝半成品——测试脚本的验收312
11.6 实战洗礼——养兵千日用兵一时313
11.6.1 高,实在是高——自动化测试的效率314
11.6.2 无处不在的地雷——自动化测试的稳定性314
11.6.3 人员匮乏——现实和理想的差距315
11.6.4 如何定义自动化比例316
11.6.5 自动化vs手动测试316
11.7 学习笔记——自动化测试之小艾观317
第12章 辗转腾挪:身手敏捷的测试319
12.1 我和天使有个约会——初识敏捷319
12.1.1 团结协作,质量为要,快速交付,响应变化,持续改进——敏捷的基本原则320
12.1.2 一切以用户价值为中心——敏捷开发基本流程326
12.1.3 敏捷=不做计划吗331
12.2 敏捷转型——一步一个脚印332
12.2.1 分析现状,尝试转型333
12.2.2 万里长征第一步,从迭代周期开始334
12.2.3 开发测试同步,按sprint交付增量335
12.2.4 组建统一团队,通过用户故事驱动337
12.2.5 适合敏捷开发的实践和工具341
12.3 互通有无——与其他实施敏捷的团队的探讨343
12.4 学习笔记——敏捷之小艾观346
第13章 涅槃!华山论剑:测试架构师的诞生348
13.1 走技术路线还是管理路线,或者当架构师348
13.2 测试架构师是干啥的351
13.3 测试架构师之n项修炼354
13.3.1 技术技能修炼354
13.3.2 软技能修炼358
13.4 测试“九阴真经” ——总体测试计划360
13.5 将缺陷扼杀在萌芽阶段362
13.6 火眼金睛——到底哪儿被测试遗漏了364
13.6.1 什么是代码覆盖率测试364
13.6.2 代码覆盖率测试工具365
13.6.3 代码覆盖率测试实战368
13.6.4 代码覆盖率测试与自动化测试的集成369
13.7 测试过程改进370
13.7.1 什么是价值流程图370
13.7.2 时间被消耗在了哪些地方371
13.8 测试驱动的软件设计变革372
13.8.1 测试人员没有主动权吗372
13.8.2 性能引发的软件设计变革374
13.9 软件系统的ras保证376
13.10 学习笔记——测试架构师之小艾观378
 
本图书信息来源:中国互动出版网

    
[2] .9.png格式图片的打造与使用
    来源: 互联网  发布时间: 2014-02-18
.9.png格式图片的制作与使用

http://www.eoeandroid.com/thread-240645-1-1.html

转载:

.9.png格式图片的制作与使用

 

http://www.cnblogs.com/vanezkw/archive/2012/07/19/2599092.html


    
[3] 惯用代码整理
    来源: 互联网  发布时间: 2014-02-18
常用代码整理
1.判断邮箱格式是否正确的代码
//利用正则表达式验证
-(BOOL)isValidateEmail:(NSString *)email
{
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",emailRegex];
return [emailTest evaluateWithObject:email];
}
2.图片压缩
用法:UIImage *yourImage= [self imageWithImageSimple:image scaledToSize:CGSizeMake(210.0, 210.0)];
//压缩图片
- (UIImage*)imageWithImageSimple:(UIImage*)image scaledToSize:(CGSize)newSize
{
// Create a graphics image context
UIGraphicsBeginImageContext(newSize);
// Tell the old image to draw in this newcontext, with the desired
// new size
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
// Get the new image from the context
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
// End the context
UIGraphicsEndImageContext();
// Return the new image.
return newImage;
}
3.亲测可用的图片上传代码
- (IBAction)uploadButton:(id)sender {
UIImage *image = [UIImage imageNamed:@"1.jpg"]; //图片名
NSData *imageData = UIImageJPEGRepresentation(image,0.5);//压缩比例
NSLog(@"字节数:%i",[imageData length]);
// post url
NSString *urlString = @"http://192.168.1.113:8090/text/UploadServlet";
//服务器地址
// setting up the request object now
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init] ;
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
//
NSString *boundary = [NSString stringWithString:@"---------------------------14737809831466499882746641449"];
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data;boundary=%@",boundary];
[request addValue:contentType forHTTPHeaderField: @"Content-Type"];
//
NSMutableData *body = [NSMutableData data];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithString:@"Content-Disposition:form-data; name=\"userfile\"; filename=\"2.png\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; //上传上去的图片名字
[body appendData:[[NSString stringWithString:@"Content-Type: application/octet-stream\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[NSData dataWithData:imageData]];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:body];
// NSLog(@"1-body:%@",body);
NSLog(@"2-request:%@",request);
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
NSLog(@"3-测试输出:%@",returnString);
4.给imageView加载图片
UIImage *myImage = [UIImage imageNamed:@"1.jpg"];
[imageView setImage:myImage];
[self.view addSubview:imageView];
5.对图库的操作
选择相册:
UIImagePickerControllerSourceTypesourceType=UIImagePickerControllerSourceTypeCamera;
if (![UIImagePickerControllerisSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
sourceType=UIImagePickerControllerSourceTypePhotoLibrary;
}
UIImagePickerController * picker = [[UIImagePickerControlleralloc]init];
picker.delegate = self;
picker.allowsEditing=YES;
picker.sourceType=sourceType;
[self presentModalViewController:picker animated:YES];
选择完毕:
-(void)imagePickerController:(UIImagePickerController*)pickerdidFinishPickingMediaWithInfo:(NSDictionary *)info
{
[picker dismissModalViewControllerAnimated:YES];
UIImage * image=[info objectForKey:UIImagePickerControllerEditedImage];
[self performSelector:@selector(selectPic:) withObject:imageafterDelay:0.1];
}
-(void)selectPic:(UIImage*)image
{
NSLog(@"image%@",image);
imageView = [[UIImageView alloc] initWithImage:image];
imageView.frame = CGRectMake(0, 0, image.size.width, image.size.height);
[self.viewaddSubview:imageView];
[self performSelectorInBackground:@selector(detect:) withObject:nil];
}
detect为自己定义的方法,编辑选取照片后要实现的效果
取消选择:
-(void)imagePickerControllerDIdCancel:(UIImagePickerController*)picker
{
[picker dismissModalViewControllerAnimated:YES];
}
6.跳到下个View
nextWebView = [[WEBViewController alloc] initWithNibName:@"WEBViewController" bundle:nil];
[self presentModalViewController:nextWebView animated:YES];
//创建一个UIBarButtonItem右边按钮
UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithTitle:@"右边" style:UIBarButtonItemStyleDone target:self action:@selector(clickRightButton)];
[self.navigationItem setRightBarButtonItem:rightButton];
设置navigationBar隐藏
self.navigationController.navigationBarHidden = YES;//
iOS开发之UIlabel多行文字自动换行 (自动折行)
UIView *footerView = [[UIView alloc]initWithFrame:CGRectMake(10, 100, 300, 180)];
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(10, 100, 300, 150)];
label.text = @"Hello world! Hello world!Hello world! Hello world! Hello world! Hello world! Hello world! Hello world!Hello world! Hello world! Hello world! Hello world! Hello world! Helloworld!";
//背景颜色为红色
label.backgroundColor = [UIColor redColor];
//设置字体颜色为白色
label.textColor = [UIColor whiteColor];
//文字居中显示
label.textAlignment = UITextAlignmentCenter;
//自动折行设置
label.lineBreakMode = UILineBreakModeWordWrap;
label.numberOfLines = 0;
7.代码生成button
CGRect frame = CGRectMake(0, 400, 72.0, 37.0);
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = frame;
[button setTitle:@"新添加的按钮" forState: UIControlStateNormal];
button.backgroundColor = [UIColor clearColor];
button.tag = 2000;
[button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button];
8.让某个控件在View的中心位置显示
(某个控件,比如label,View)label.center = self.view.center;
9.好看的文字处理
以tableView中cell的textLabel为例子:
cell.backgroundColor = [UIColorscrollViewTexturedBackgroundColor];
//设置文字的字体
cell.textLabel.font = [UIFont fontWithName:@"AmericanTypewriter" size:100.0f];
//设置文字的颜色
cell.textLabel.textColor = [UIColor orangeColor];
//设置文字的背景颜色
cell.textLabel.shadowColor = [UIColor whiteColor];
//设置文字的显示位置
cell.textLabel.textAlignment = UITextAlignmentCenter;
10.隐藏Status Bar
读者可能知道一个简易的方法,那就是在程序的viewDidLoad中加入
[[UIApplication sharedApplication]setStatusBarHidden:YES animated:NO];
11.更改AlertView背景
UIAlertView *theAlert = [[[UIAlertViewalloc] initWithTitle:@"Atention"
message: @"I'm a Chinese!"
delegate:nil
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Okay",nil] autorelease];
[theAlert show];
UIImage *theImage = [UIImageimageNamed:@"loveChina.png"];
theImage = [theImage stretchableImageWithLeftCapWidth:0topCapHeight:0];
CGSize theSize = [theAlert frame].size;
UIGraphicsBeginImageContext(theSize);
[theImage drawInRect:CGRectMake(5, 5, theSize.width-10, theSize.height-20)];//这个地方的大小要自己调整,以适应alertview的背景颜色的大小。
theImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
theAlert.layer.contents = (id)[theImage CGImage];
12.键盘透明
textField.keyboardAppearance = UIKeyboardAppearanceAlert;
状态栏的网络活动风火轮是否旋转
[UIApplication sharedApplication].networkActivityIndicatorVisible,默认值是NO。
13.截取屏幕图片
//创建一个基于位图的图形上下文并指定大小为CGSizeMake(200,400)
UIGraphicsBeginImageContext(CGSizeMake(200,400));
//renderInContext 呈现接受者及其子范围到指定的上下文
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
//返回一个基于当前图形上下文的图片
UIImage *aImage = UIGraphicsGetImageFromCurrentImageContext();
//移除栈顶的基于当前位图的图形上下文
UIGraphicsEndImageContext();
//以png格式返回指定图片的数据
imageData = UIImagePNGRepresentation(aImage);
14.更改cell选中的背景
UIView *myview = [[UIView alloc] init];
myview.frame = CGRectMake(0, 0, 320, 47);
myview.backgroundColor = [UIColorcolorWithPatternImage:[UIImage imageNamed:@"0006.png"]];
cell.selectedBackgroundView = myview;
15.显示图像
CGRect myImageRect = CGRectMake(0.0f, 0.0f, 320.0f, 109.0f);
UIImageView *myImage = [[UIImageView alloc] initWithFrame:myImageRect];
[myImage setImage:[UIImage imageNamed:@"myImage.png"]];
myImage.opaque = YES; //opaque是否透明
[self.view addSubview:myImage];
16.能让图片适应框的大小(没有确认)
NSString*imagePath = [[NSBundle mainBundle] pathForResource:@"XcodeCrash"ofType:@"png"];
UIImage *image = [[UIImage alloc]initWithContentsOfFile:imagePath];
UIImage *newImage= [image transformWidth:80.f height:240.f];
UIImageView *imageView = [[UIImageView alloc]initWithImage:newImage];
[newImagerelease];
[image release];
[self.view addSubview:imageView];
17.实现点击图片进行跳转的代码:生成一个带有背景图片的button,给button绑定想要的事件!
UIButton *imgButton=[[UIButton alloc]initWithFrame:CGRectMake(0, 0, 120, 120)];
[imgButton setBackgroundImage:(UIImage *)[self.imgArray objectAtIndex:indexPath.row] forState:UIControlStateNormal];
imgButton.tag=[indexPath row];
[imgButton addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3