Monthly Archives: August 2012

使用AppleDoc自动生成帮助文档

AppleDoc 是一个根据注释生成文档的工具,其生成的文档风格类似于iOS SDK的帮助文档,并能生成docset格式,安装到本机的帮助文档系统中。 AppleDoc还可以整合到Xcode编译环境中,通过runscript的方式调用,在编译的同时生成最新的帮助文档,从而保持文档和代码的一致性 AppleDoc是一个开源产品,目前托管在github上,项目地址:https://github.com/tomaz/appledoc AppleDoc 安装: 将项目复制到本地 git clone git://github.com/tomaz/appledoc.git 运行intall命令 sudo sh install-appledoc.sh 使用也比较简单,直接在命令行执行即可 appledoc –project-name appledoc –project-company “Gentle Bytes” –company-id com.gentlebytes –output ~/help . 最后生成的结果类似下面的链接展示的帮助文档: http://gabriel.github.com/gh-kit/

iOS Leave a comment

在iOS中使用正则表达式

在iOS开发中,经常会遇到处理网页信息,或者验证用户名是否符合规则等情况,正则表达式则可以方便的处理这些问题。 在iOS的开发中使用NSPredicate 的字符串比较功能来进行正则表达式处理,其比较关键字为:<code><code><code><code>MATCHES 下面的代码定义了一个匹配6-15个由字母/数字组成的字符串的正则表达式 NSString * regex        = @”(^[A-Za-z0-9]{6,15}$)”; NSPredicate * pred      = [NSPredicate predicateWithFormat:@”SELF MATCHES %@”, regex]; BOOL isMatch            = [pred evaluateWithObject:@”123456ABCde”];

iOS Leave a comment

关于在ios map app中不适宜使用矩形查询的思考

在esri论坛上有位同学提了一个问题,如何实现矩形查询,我给出的建议是不推荐在移动设备上使用这么复杂的功能,建议用缓冲区查询代替。 我的思路如下: 从操作复杂性来看 矩形查询要经过下面的步骤完成 1 锁定地图漫游状态,这一步需要手势或按钮来实现 2 在地图上根据手指的移动绘制矩形框 3查询 4 取消地图漫游状态 对上面的操作无论怎么精简,交互也需要至少两步才能完成。 对于缓冲区查询最简单的方法只需一步交互 使用定位功能自动得到位置并自动生成缓冲区进行查询或者长按地图选点生产缓冲区查询 。 这两种方式基本上可以交互一次完成. 从结果来看,人的正常思维一般是比较关心周边信息而不是任意矩形内的信息。在移动端产品中做矩形查询基本意义不大,移动设备的gps功能基本可以取代使用矩形框定位的方式。 从操作难度来看,矩形查询在移动中一只手很难完成,特别是在颠簸的环境中。而缓冲区查询只需点个按钮即可完成,难度要低很多。 结语: 移动开发要深刻理解移动的精髓,充分利用移动的特点,而不要将桌面端的功能照搬到移动端。

Uncategorized 2 Comments

在iOS中获取AGSMapView的图片

在iOS中有时候会需要截取mapview当前的显示内容,用来辅助描述你的地理位置,下面的代码为截图的方法: if (NULL != UIGraphicsBeginImageContextWithOptions) UIGraphicsBeginImageContextWithOptions(self.mapView.frame.size, NO, 0); else UIGraphicsBeginImageContext(self.mapView.frame.size); CGContextRef context = UIGraphicsGetCurrentContext(); [self.mapView.layer renderInContext:context]; UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();

ArcGIS API for iOS, iOS, iPad, iPhone4 Leave a comment

GIS RSS reader

AppStore下载地址http://itunes.apple.com/us/app/gis-rss-reader/id551240833?ls=1&mt=8 GIS RSS reader 是一款运行在iOS设备上的RSS阅读器,该RSS阅读器集成了GIS圈内知名博客以及ArcGIS相关博客的RSS链接,让您可以快速、方便的了解GIS技术的最新动态。 用户还可以订阅自己喜欢的博客。 集成的博客列表如下: barry的后院    http://www.giser.net/?feed=rss2 菩提老王的葡萄架  http://blog.newnaw.com/?feed=rss2 add的博客  http://blog.3snews.net/rss.php?uid=39273 James Fee GIS Blog  http://spatiallyadjusted.com/atom.xml sharpGIS     http://www.sharpgis.net/syndication.axd GISpace http://blog.csdn.net/GISpace/rss/list ENVI/IDL技术殿堂  http://blog.sina.com.cn/rss/1984634525.xml ArcGIS Desktop  http://blogs.esri.com/Dev/blogs/arcgisdesktop/rss.aspx ArcGIS Server http://blogs.esri.com/Dev/blogs/arcgisserver/rss.aspx ArcGIS Mobile http://blogs.esri.com/esri/arcgis/category/mobile/feed/rss ArcGIS Online http://blogs.esri.com/Support/blogs/arcgisonline/rss.aspx rcGIS 3D http://blogs.esri.com/Dev/blogs/3dgis/rss.aspx ArcGIS开发者 http://blogs.esri.com/Dev/blogs/arcobjectsdevelopment/rss.aspx ArcGIS地理数据库 http://blogs.esri.com/Dev/blogs/geodatabase/rss.aspx ArcGIS地理处理 http://blogs.esri.com/Dev/blogs/geoprocessing/rss.aspx ArcGIS影像 http://blogs.esri.com/Dev/blogs/imagery/rss.aspx        

ArcGIS API for iOS, ios app 2 Comments

giser.net iphone客户端

giser.net iphone客户端是一款支持wordpress博客文章浏览的客户端,后台采用wordpress json API开发,能够实时刷新最新博客,第一时间获取GIS资讯。

iOS, ios app Tagged , Leave a comment

ArcGIS runtime for iOS中自定义MarkerSymbol

在GIS 的开发中,符号是一个很重要的东西,当然99%的需求都可以使用图片来解决,但有1%的需求必须使用自定义MarkerSymbol来解决,例如天气预报中的九宫格和风向标等,要根据数据的属性去动态绘制这些符号,如果用图片的话,估计满篇都是if-else。 废话少说,在ArcGIS runtime for iOS中自定义MarkerSymbol,首先继承AGSMarkerSymbol #import “ArcGIS.h” @interface TriangleFlagMarker : AGSMarkerSymbol @end 实现 – (void)drawGraphic:(AGSGraphic*)graphic atX:(float)x y:(float)y inContext:(CGContextRef)context 和 – (CGSize) drawingSize 方法 drawingSize方法控制绘制symbol的大小 在drawGraphic方法中绘制符号 – (void)drawGraphic:(AGSGraphic*)graphic atX:(float)x y:(float)y inContext:(CGContextRef)context { NSLog(@”%f-%f”,x,y); if (graphic != nil) { NSLog(@”graphic nil”); } CGContextSetRGBFillColor(context, 0, 0, 255, 0.1); CGContextSetRGBStrokeColor(context, 0, 0, 255, 0.5); CGContextFillEllipseInRect(context, CGRectMake(x, y, 10, […]

ArcGIS, ArcGIS API for iOS, iOS Leave a comment