【IOS学习】NINetworkImageView下载图片,google地图图片获取
2014-06-10 22:34
197 查看
一、NINetworkImageView是Nimbus下载图片的类,类是这么描述的:
A network-enabled image view that consumes minimal amounts of memory.
Intelligently crops and resizes images for optimal memory use and uses threads to avoid processing images on the UI thread.
消耗很少的内存使用网络图片.
使用线程以避免在UI线程上下载处理,并智能,调整优化内存的使用图像。
真的很好用,一步加载图片。
首先#import "NimbusNetworkImage.h"头文件
在.m文件添加:
[cpp] view
plaincopy
UIImage* image = [UIImage imageWithContentsOfFile:
NIPathForBundleResource(nil, @"abcd@2x.png")];
<span style="font-family:FangSong_GB2312;">NINetworkImageView</span>* imageView = [[NINetworkImageView alloc] initWithImage:image];
// Method #1: Use the image's frame to determine the display size for the network image.
imageView.frame = CGRectMake(0, 0, 58, 58);
NSString* start_latitude = start_latitude;
NSString* start_longitude = start_longitude];
NSString* imageUrlString = @"http://maps.googleapis.com/maps/api/staticmap?center=";
NSString* imageUrlStringEnd = @"&zoom=14&size=600x800&maptype=roadmap&markers=color:red%7C";
imageUrlString = [imageUrlString stringByAppendingFormat:@"%@%@%@%@%@%@%@%@",start_latitude,@",",start_longitude,imageUrlStringEnd,start_latitude,@",",start_longitude,@"&sensor=false"];
另外一个种使用方法
[cpp] view
plaincopy
/ Method #2: use the method setPathToNetworkImage:forDisplaySize:
[imageView setPathToNetworkImage: @"http://farm2.static.flickr.com/1165/644335254_4b8a712be5.jpg"
forDisplaySize: CGSizeMake(100, 100)];
Nimbus使用文档:http://docs.nimbuskit.info/interface_n_i_network_image_view.html
二、NSString字符串连接
NSString* string; // 结果字符串
NSString* string1, string2; //已存在的字符串
1. string = [NSString initWithFormat:@"%@,%@", string1, string2 ];
2. string = [string1 stringByAppendingString:string2];</p>
3 . string = [string stringByAppendingFormat:@"%@,%@",string1, string2];
4 . string = [string stringByAppendingFormat:@"%@%@%@%@%@%@",string1, string2, string3, string4......];
可以拼接很多,%@中间加逗号字符串里也带逗号
三,NNString用法
-----创建字符串的方法-----
//1、创建常量字符串
NSString *astring = @"This is a String!";
//2、先创建一个空的字符串,然后赋值;
// alloc和init组合则适合在函数之间传递参数,用完之后需要手工release
NSString *astring = [[NSString alloc] init];
astring = @"This is a String!";
NSLog(@"astring:%@",astring);
[astring release];
//3、在以上方法中,提升速度:initWithString方法
NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];
NSLog(@"astring:%@",astring);
[astring release];
//4、创建临时字符串
NSString *astring;
astring = [NSString stringWithCString:"This is a temporary string"];
NSLog(@"astring:%@",astring);
// OR
NSString * scriptString = [NSString stringWithString:@" tell application \"Mail\"\r"];
//5、创建格式化字符串:占位符(由一个%加一个字符组成)
int i = 1;
int j = 2;
NSString *astring = [[NSString alloc] initWithString:[NSString stringWithFormat:@"%d.This is %i string!",i,j]];
NSLog(@"astring:%@",astring);
[astring release];
-----从文件读取字符串-----
NSString *path = @"astring.text";
NSString *astring = [[NSString alloc] initWithContentsOfFile:path];
NSLog(@"astring:%@",astring);
[astring release];
-----写字符串到文件----
NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];
NSLog(@"astring:%@",astring);
NSString *path = @"astring.text";
[astring writeToFile: path atomically: YES];
[astring release];
-----比较两个字符串-----
//1、用C比较:strcmp函数
char string1[] = "string!";
char string2[] = "string!";
if(strcmp(string1, string2) = = 0)
{
NSLog(@"1");
}
//2、isEqualToString方法
NSString *astring01 = @"This is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 isEqualToString:astring02];
NSLog(@"result:%d",result);
//3、compare方法(comparer返回的三种值:NSOrderedSame,NSOrderedAscending,NSOrderedDescending)
NSString *astring01 = @"This is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02] = = NSOrderedSame; //NSOrderedSame 判断两者是否相同
NSLog(@"result:%d",result);
NSString *astring01 = @"This is a String!";
NSString *astring02 = @"this is a String!";
BOOL result = [astring01 compare:astring02] = = NSOrderedAscending;
NSLog(@"result:%d",result);
//NSOrderedAscending 判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02] = = NSOrderedDescending;
NSLog(@"result:%d",result);
//NSOrderedDescending 判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
//4、不考虑大小写比较字符串1
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 caseInsensitiveCompare:astring02] = = NSOrderedSame;
NSLog(@"result:%d",result);
//NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
//5、不考虑大小写比较字符串2
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02
options:NSCaseInsensitiveSearch | NSNumericSearch] = = NSOrderedSame;
NSLog(@"result:%d",result);
//NSCaseInsensitiveSearch:不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写 NSNumericSearch:比较字符串的字符个数,而不是字符值。
四、打印日志
NSLog(@"%@ ",order);//打印字典
NSLog(@"%@ ",imageUrlString);
五、google map 地图取经纬度对应的图片,并在中心插上图标
http://maps.googleapis.com/maps/api/staticmap?center=40.08029,116.58797&zoom=14&size=600x500&maptype=roadmap&markers=color:blue%7C40.08029,116.58797&sensor=false
显示地图图片如下:
center=后面是取图片的经纬度,zoom是图片放大缩小等级,size= 是需要的图片大小,可根据需求调。color:后面是图标的颜色,可以自己定义,比如换成red, 7C后面是插上图标的经纬度
Overview
A network-enabled image view that consumes minimal amounts of memory.Intelligently crops and resizes images for optimal memory use and uses threads to avoid processing images on the UI thread.
消耗很少的内存使用网络图片.
使用线程以避免在UI线程上下载处理,并智能,调整优化内存的使用图像。
真的很好用,一步加载图片。
首先#import "NimbusNetworkImage.h"头文件
在.m文件添加:
[cpp] view
plaincopy
UIImage* image = [UIImage imageWithContentsOfFile:
NIPathForBundleResource(nil, @"abcd@2x.png")];
<span style="font-family:FangSong_GB2312;">NINetworkImageView</span>* imageView = [[NINetworkImageView alloc] initWithImage:image];
// Method #1: Use the image's frame to determine the display size for the network image.
imageView.frame = CGRectMake(0, 0, 58, 58);
NSString* start_latitude = start_latitude;
NSString* start_longitude = start_longitude];
NSString* imageUrlString = @"http://maps.googleapis.com/maps/api/staticmap?center=";
NSString* imageUrlStringEnd = @"&zoom=14&size=600x800&maptype=roadmap&markers=color:red%7C";
imageUrlString = [imageUrlString stringByAppendingFormat:@"%@%@%@%@%@%@%@%@",start_latitude,@",",start_longitude,imageUrlStringEnd,start_latitude,@",",start_longitude,@"&sensor=false"];
另外一个种使用方法
[cpp] view
plaincopy
/ Method #2: use the method setPathToNetworkImage:forDisplaySize:
[imageView setPathToNetworkImage: @"http://farm2.static.flickr.com/1165/644335254_4b8a712be5.jpg"
forDisplaySize: CGSizeMake(100, 100)];
Nimbus使用文档:http://docs.nimbuskit.info/interface_n_i_network_image_view.html
二、NSString字符串连接
NSString* string; // 结果字符串
NSString* string1, string2; //已存在的字符串
1. string = [NSString initWithFormat:@"%@,%@", string1, string2 ];
2. string = [string1 stringByAppendingString:string2];</p>
3 . string = [string stringByAppendingFormat:@"%@,%@",string1, string2];
4 . string = [string stringByAppendingFormat:@"%@%@%@%@%@%@",string1, string2, string3, string4......];
可以拼接很多,%@中间加逗号字符串里也带逗号
三,NNString用法
-----创建字符串的方法-----
//1、创建常量字符串
NSString *astring = @"This is a String!";
//2、先创建一个空的字符串,然后赋值;
// alloc和init组合则适合在函数之间传递参数,用完之后需要手工release
NSString *astring = [[NSString alloc] init];
astring = @"This is a String!";
NSLog(@"astring:%@",astring);
[astring release];
//3、在以上方法中,提升速度:initWithString方法
NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];
NSLog(@"astring:%@",astring);
[astring release];
//4、创建临时字符串
NSString *astring;
astring = [NSString stringWithCString:"This is a temporary string"];
NSLog(@"astring:%@",astring);
// OR
NSString * scriptString = [NSString stringWithString:@" tell application \"Mail\"\r"];
//5、创建格式化字符串:占位符(由一个%加一个字符组成)
int i = 1;
int j = 2;
NSString *astring = [[NSString alloc] initWithString:[NSString stringWithFormat:@"%d.This is %i string!",i,j]];
NSLog(@"astring:%@",astring);
[astring release];
-----从文件读取字符串-----
NSString *path = @"astring.text";
NSString *astring = [[NSString alloc] initWithContentsOfFile:path];
NSLog(@"astring:%@",astring);
[astring release];
-----写字符串到文件----
NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];
NSLog(@"astring:%@",astring);
NSString *path = @"astring.text";
[astring writeToFile: path atomically: YES];
[astring release];
-----比较两个字符串-----
//1、用C比较:strcmp函数
char string1[] = "string!";
char string2[] = "string!";
if(strcmp(string1, string2) = = 0)
{
NSLog(@"1");
}
//2、isEqualToString方法
NSString *astring01 = @"This is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 isEqualToString:astring02];
NSLog(@"result:%d",result);
//3、compare方法(comparer返回的三种值:NSOrderedSame,NSOrderedAscending,NSOrderedDescending)
NSString *astring01 = @"This is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02] = = NSOrderedSame; //NSOrderedSame 判断两者是否相同
NSLog(@"result:%d",result);
NSString *astring01 = @"This is a String!";
NSString *astring02 = @"this is a String!";
BOOL result = [astring01 compare:astring02] = = NSOrderedAscending;
NSLog(@"result:%d",result);
//NSOrderedAscending 判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02] = = NSOrderedDescending;
NSLog(@"result:%d",result);
//NSOrderedDescending 判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
//4、不考虑大小写比较字符串1
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 caseInsensitiveCompare:astring02] = = NSOrderedSame;
NSLog(@"result:%d",result);
//NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
//5、不考虑大小写比较字符串2
NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01 compare:astring02
options:NSCaseInsensitiveSearch | NSNumericSearch] = = NSOrderedSame;
NSLog(@"result:%d",result);
//NSCaseInsensitiveSearch:不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写 NSNumericSearch:比较字符串的字符个数,而不是字符值。
四、打印日志
NSLog(@"%@ ",order);//打印字典
NSLog(@"%@ ",imageUrlString);
五、google map 地图取经纬度对应的图片,并在中心插上图标
http://maps.googleapis.com/maps/api/staticmap?center=40.08029,116.58797&zoom=14&size=600x500&maptype=roadmap&markers=color:blue%7C40.08029,116.58797&sensor=false
显示地图图片如下:
center=后面是取图片的经纬度,zoom是图片放大缩小等级,size= 是需要的图片大小,可根据需求调。color:后面是图标的颜色,可以自己定义,比如换成red, 7C后面是插上图标的经纬度
相关文章推荐
- IOS学习2 IOS 使用NINetworkImageView下载图片,google地图图片的获取。
- iOS学习之iOS 使用NINetworkImageView下载图片,google地图图片的获取。
- IOS学习之IOS 使用NINetworkImageView下载图片,google地图图片的获取。
- IOS学习之IOS 使用NINetworkImageView下载图片,google地图图片的获取。
- iOS学习之iOS 使用NINetworkImageView下载图片,google地图图片的获取。
- IOS开发-UI学习-根据URL显示图片,下载图片的练习(button,textfield,image view,url,data)
- NiNetworkImageView下载图片,goole地图图片的获取
- 从指定网址下载文件 并读出其内容 && 从网上下载文件放在本地&&从网上获取图片设在imageView里
- 27.Android之ImageView获取图片学习
- 安卓开发学习之016 ImageView(二)图片的N种获取方法
- ios 从网络下载图片,保存,并用imageview从保存中显示
- Android学习(35) -- smart-image-view 获取网络图片
- ios 从网络下载图片,保存,并用imageview从保存中显示
- 【学习笔记】以bitmap类型获取imageview的图片
- ios 从网络下载图片,保存,并用imageview从保存中显示
- iOS-从网络下载图片,保存,并用imageview从保存中显示
- ios 从网络下载图片,保存,并用imageview从保存中显示
- android imageView 获取指定名字的图片、从MyEclipse服务器下载图片
- Android(java)学习笔记204:自定义SmartImageView(继承自ImageView,扩展功能为自动获取网络路径图片)
- ios 从网络下载图片,保存,并用imageview从保存中显示