`
yidongkaifa
  • 浏览: 4064974 次
文章分类
社区版块
存档分类
最新评论

iOS学习之iOS 使用NINetworkImageView下载图片,google地图图片的获取。

 
阅读更多


一、NINetworkImageView是Nimbus下载图片的类,类是这么描述的:

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文件添加:

 
    UIImage* image = [UIImage imageWithContentsOfFile:
                      NIPathForBundleResource(nil, @"abcd@2x.png")];
    NINetworkImageView* 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"];

另外一个种使用方法

/ 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 = [[NSStringalloc]initWithString:@"This is a String!"];
NSLog(@"astring:%@",astring);
[astring release];
//4、创建临时字符串
NSString *astring;
astring = [NSStringstringWithCString:"This is a temporary string"];
NSLog(@"astring:%@",astring);
// OR
NSString * scriptString = [NSStringstringWithString:@" tell application \"Mail\"\r"];
//5、创建格式化字符串:占位符(由一个%加一个字符组成)
int i = 1;
int j = 2;
NSString *astring = [[NSString alloc]initWithString:[NSStringstringWithFormat:@"%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";
[astringwriteToFile: 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 = [astring01isEqualToString: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 = [astring01compare:astring02] = =NSOrderedSame;//NSOrderedSame 判断两者是否相同
NSLog(@"result:%d",result);

NSString *astring01 = @"This is a String!";
NSString *astring02 = @"this is a String!";
BOOL result = [astring01compare:astring02] = =NSOrderedAscending;
NSLog(@"result:%d",result);
//NSOrderedAscending 判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)

NSString *astring01 = @"this is a String!";
NSString *astring02 = @"This is a String!";
BOOL result = [astring01compare: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 = [astring01caseInsensitiveCompare: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后面是插上图标的经纬度


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics