当前位置:  编程技术>移动开发
本页文章导读:
    ▪三种方法快速制作tpk文件        3种方法快速制作tpk文件        tpk是ArcGIS10.1推出的一种新的数据文件类型,主要是用于将切片文件打包形成离线地图包,tpk可以在ArcGIS Runtime或者ArcGIS for Android/iOS中作为切片底图被加载,有.........
    ▪ 怎么使用UITextFieldDelegate来隐藏键盘        如何使用UITextFieldDelegate来隐藏键盘? 使用UITextFieldDelegate这个协议实现隐藏键盘。需要三步:  1. 在你的控制器类中,加入UITextFieldDelegate协议,如:     @interface EditingPersonViewController : UIView.........
    ▪ 二维码预先言       二维码之前言十一长假也过了,再有长假就得春节见了。因朋友的一句话,我关注二维码已经有一段时间了,也研究了相关资料,从今天起开始重点撰写二维码及其相关技术知识。 二维码不.........

[1]三种方法快速制作tpk文件
    来源: 互联网  发布时间: 2014-02-18
3种方法快速制作tpk文件

        tpk是ArcGIS10.1推出的一种新的数据文件类型,主要是用于将切片文件打包形成离线地图包,tpk可以在ArcGIS Runtime或者ArcGIS for Android/iOS中作为切片底图被加载,有多种制作tpk的方法,分别如下:


使用ArcMap制作tpk

在ArcGIS10.1中tpk的生成被集成在了ArcGIS for Desktop中,制作方法如下:

1、打开ArcMap,将数据加载进来,选择菜单Customize-》ArcMap Options,在弹出的对话框中选择“sharing”选项卡,勾选“Enable ArcGIS Runtime Tools”;



2、此时,在File文件菜单中的“share as…”菜单下就多了一个选项“Tile Package…”,选择该菜单,弹出“Tile Package”对话框,设置各个标签页中的参数,基本都和发布ArcGIS for Server地图服务时的参数相同,填写完成后点击“Analyze”,如果报错则根据错误提示重新修改各个参数,最后点击Share,开始制作tpk文件:




使用GP工具制作tpk

另外一种方法是直接通过GP工具完成tpk的制作。

选择“ArcToolbox”-》“Data Management Tools ”-》“Create Map Tile Package”,如下:



运行该GP工具,弹出如下对话框:



选择要制作tpk的地图文档mxd,指定tpk保存的位置,切片格式默认使用PNG,级别根据需要设置,点击“ok“即可完成的tpk制作。


使用已有的紧凑型切片制作tpk

1、Tpk文件的组成

 

      tpk文件其实是一个zip文件,通过解压缩Tpk文件,我们可以得到tpk文件的内部结构,由esriinfo和V101两个文件夹组成,如下图:



        其中,"Trchive"可以替换为你自己项目中的实际名称,其它文件夹名称或文件名称均不能更改。thumbnail文件夹中存放的是切片的一个缩略图,其余文件是描述文件或者说是tpk文件的配置信息文件,尽管有一个文件的后缀名pkinfo,都是XML结构的;V101文件夹中就是我们熟悉的紧凑型切片数据和一个.layer文件。 

        熟悉了tpk的结构,制作tpk数据集就容易了,先按照其组成在项目文件夹下新建两个目录esriinfo和V101,之后制作其它文件,我们需要制作的文件共有四个:一个缩略图,两个描述文件,以及一个layer文件。


2、制作thumbnail(缩略图)

 

      为切片制作一个200×133大小,格式为png的缩略图,并保存至esriinfo目录下的thumbnail文件夹下(在实际过程中,没这个文件也是可以的)。

 

3、生成item.pkinfo文件

 

      在esriinfo目录下新建文件item.pkinfo,文件内容如下,红色部分需修改(其实 Culture='zh-CN'这个也可以修改,不同的国家这个是不一样的,因为我们都在中国,所以这个我就略过了):

<?xml version="1.0"encoding="utf-8" ?>

<?xml-stylesheettype="text/xsl"

href="http://www.arcgisonline.com/home/pkinfostylesheet.xsl"?>

<pkinfo Culture='zh-CN'>

<ID>F24BC58B-F4A6-4414-921D-B762DE9545F3</ID>

<name>Test</name>

<version>10.1Pre-release</version>

<size>-1</size>

<created></created>

<type>Tile Package</type>

<servable>false</servable>

<packagelocation></packagelocation>

<pkinfolocation></pkinfolocation>

</pkinfo>

 

4、生成iteminfo.xml文件

         在esriinfo目录下新建文件iteminfo.xml,文件内容如下,红色部分必须修改,蓝色部分为一些描述信息,可随意填写:


<?xml version="1.0"encoding="utf-8" ?>

<ESRI_ItemInformationCulture='zh-CN'>

<name>Test</name>

<guid>F24BC58B-F4A6-4414-921D-B762DE9545F3</guid>

<catalogpath></catalogpath>

<snippet>Test</snippet>

<description>Test</description>

<summary>Test</summary>

<title>Test</title>

<tags>Test</tags>

<type>Tile Package</type>

<typekeywords>

<typekeyword>TilePackage</typekeyword>

<typekeyword>ArcGISRuntime</typekeyword>

<typekeyword>.tpk</typekeyword>

</typekeywords>

<thumbnail>thumbnail/thumbnail.png</thumbnail>

<documentation></documentation>

<url></url>

<datalastmodifiedtime></datalastmodifiedtime>

<extent>

<xmin>-179.999999999987</xmin>

<ymin>-86.3842826037127</ymin>

<xmax>179.999999999987</xmax>

<ymax>86.3842826106563</ymax>

</extent>

<spatialreference>WGS_1984_Web_Mercator_Auxiliary_Sphere</spatialreference>

<accessinformation></accessinformation>

<licenseinfo></licenseinfo>

</ESRI_ItemInformation>

 

        Tips:可能你已经注意到,这两个配置文件中,红色部分的<name>和<guid>标签的值是一样的,对,它们的值必须一一对应,name为.mxd的名字,guid则是全球唯一标识号,可使用一些软件自动生成。关于guid的生成网络上有很多介绍,在此不赘述。


5、制作layer文件


        打开ArcMap,添加切片文件到ArcMap中,设置文档保存属性为相对路径,将添加的切片图层另存为layer文件,同时,将生成的切片文件和layer文件拷贝至V101目录下。

 

6、打包为tpk


        将整个项目目录打包为zip,打包时选择存储。将文件后缀名更改为tpk就得到我们所需要的tpk文件了。



    
[2] 怎么使用UITextFieldDelegate来隐藏键盘
    来源: 互联网  发布时间: 2014-02-18
如何使用UITextFieldDelegate来隐藏键盘?

使用UITextFieldDelegate这个协议实现隐藏键盘。需要三步: 
1. 在你的控制器类中,加入UITextFieldDelegate协议,如:
    @interface EditingPersonViewController : UIViewController<UITextFieldDelegate> 
2. 根据协议的要求,在实现文件中加入textFieldShouldReturn方法,如:
    -(BOOL) textFieldShouldReturn:(UITextField *)textField {
     [textField resignFirstResponder];
     return YES;
     }
3. 将xib文件中的TextField控件的delegate变量指向到之前使用UITextFieldDelegate协议的那个控制器类 将TextField的delegate IBOutlet变量右键链接到前面的控制器类的实例上。 
或者使用代码方式,指定相关TextField的delegate变量。 
    - (void)viewDidLoad { 
    [super viewDidLoad]; 
    itemNameField.delegate = self; 
    priceField.delegate = self; 
    }

第三步很容易忽略,之前就因为忘记指定delegate变量,导致点击键盘的return健,键盘死活不隐藏。
实现了这三步后,用户就可以点击键盘上的Return键来隐藏键盘。


    
[3] 二维码预先言
    来源: 互联网  发布时间: 2014-02-18
二维码之前言

十一长假也过了,再有长假就得春节见了。因朋友的一句话,我关注二维码已经有一段时间了,也研究了相关资料,从今天起开始重点撰写二维码及其相关技术知识。

二维码不是最近才有的,它已经在市面上有几个年头了。腾讯马化腾也公开表示:二维码将成线上线下关键入口。我赞同这种说法,二维码的只要通过扫描就可以获得里面复杂的信息内容,从而解脱了我们的双手。所以,我对二维码的理解就是:不想用户输入大量复杂内容时的最佳选择。举例来说,以前用手机上网,最麻烦的事就是输入网址。现在,只要手机摄像头对准二维码,就可以获得里面包含的网址,并且可以直接开打。所以,我说二维码随着智能手机的发展,也迎来了它的春天。

二维码有很多种表现形式,最为流行和知名的就要数PDF417和QR。在他们两个中,QR二维码又是在业内使用最为广泛的,最为成熟的技术。典型的案例就包括腾讯微信,以及新浪微博。很有意思的是,前段时间保钓行动的抵制日货,而QR二维码正是日本Denso-Wave公司发明的。


接下来聊聊微信和微博的二维码:
新浪微博的二维码,则是在中间增加了头像。开始我以为新浪采用了更高的技术,可以在扫描二维码的同时,将二维码中的头像也能读取出来。在后来看了相关技术资料才明白,新浪只是合理的利用了二维码技术规则,增加了一些自己的装饰而已,并没有改变QR二维码。类似情况的腾讯微信二维码,它就丰富了很多,可以选择很多种二维码样式,原理也是一样的。单从显示效果而已,我认为微信二维码的装饰就要比新浪微博的效果差些,增加花边的效果没有中间放个头像更吸引对方注意。


另外,还有一位博主写了篇关于二维码颜色变换的文章,大家可以看看,学习学习。

 

 

对于二维码的应用,现在比较稳定的要数ZXing了,最新的版本是1.7。从代码注解中可以看到,它创作于2007年,包含了多个平台:j2se、j2me、android、ios、symbian等。除了二维码,它还可以扫描一维码(条形码)。这里附上其java版的core,想直接用lib的,可以下载这个:

ZXing1.7Core


    
最新技术文章:
▪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