- 博客(53)
- 资源 (3)
- 收藏
- 关注
原创 Android 中mkdir() 和mkdirs()创建目录的区别
Android中创建目录可以用File对象的 mkdir() 或mkdirs()方法,它们是有区别的:booleanmkdir()Creates the directory named by this file, assuming its parents exist.booleanmkdirs()Creates the d
2013-09-11 12:00:45 2549
转载 android用于打开各种文件的intent
原文地址 http://blog.csdn.net/wutianyin222/article/details/8735340import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.net.Uri.Builder;
2013-08-27 16:13:46 1866
转载 Objective-c 中 nil, Nil, NULL和NSNull的区别
原文地址:http://blog.csdn.net/yhawaii/article/details/7442529nil: A null pointer to an Objective-C object. (一个Objective-C对象的空指针)( #define nil ((id)0) )Nil: A null pointer to an Objective-
2013-08-27 09:25:02 1693
翻译 Sprite Kit编程指南(9)-Sprite Kit最佳实践
Sprite Kit最佳实践此时此刻,你已经十分清楚Sprite Kit可以做什么以及它是如何做的。你知道如何将节点添加到场景并让那些节点执行动作——创建游戏可玩性(gameplay)的构建块(building blocks)。你可能会错过的是更大的蓝图。也就是说,你需要了解如何使用Sprite Kit规划并开发游戏和工具。为了发挥Sprite Kit的最大功效,你需要知道:·
2013-08-22 13:57:30 2182 1
翻译 Sprite Kit编程指南(8)-模拟物理
模拟物理Sprite Kit中的物理模拟通过添加物理体场景来进行。物理体是一个模拟的物理对象,该对象连接到场景的节点树中的节点。它使用节点的位置和方向把它自身放置在模拟中。每一个物理体具有其他定义模拟如何操作它的特性。这些属性包括物理对象的先天属性,如它的质量或密度,也包括施加于它的属性,如它的速度。这些特性定义了主体如何移动,它在模拟中是如何受到力的影响,以及它是如何响应与其他物理体
2013-08-21 08:29:09 6285 3
翻译 Sprite Kit编程指南(7)-高级场景处理
高级场景处理使用Sprite Kit涉及到操纵场景树的内容来让内容在屏幕上的动起来。通常情况下,动作是该系统的核心。然而,通过直接地挂接到(hooking into)场景处理,你可以创建动作不能单独完成的其他行为。要做到这一点,你需要学习:· 场景如何处理动画· 如何在场景处理过程中添加自己的行为场景如何处理动画帧在传统视图系统中,视
2013-08-16 10:15:19 2274 1
翻译 Sprite Kit编程指南(6)-使用其他节点类型
高级场景处理使用Sprite Kit涉及到操纵场景树的内容来让内容在屏幕上的动起来。通常情况下,动作是该系统的核心。然而,通过直接地挂接到(hooking into)场景处理,你可以创建动作不能单独完成的其他行为。要做到这一点,你需要学习:· 场景如何处理动画· 如何在场景处理过程中添加自己的行为场景如何处理动画帧在传统视图系统中,视
2013-08-13 09:11:43 4950 1
翻译 Sprite Kit编程指南(5)-使用场景间过渡
使用场景间过渡场景是游戏的基本构建块。通常情况下,你为游戏的各部分设计自包含(self-contained)的场景,然后在必要时在这些场景之间过渡。例如,你可以创建不同的场景类表现任何或全部下列概念:· 在其他内容加载时显示的加载场景· 选择你要玩什么样的游戏的主菜单场景· 用户选择的特定类型游戏的配置细节的场景· 提供游戏的场景
2013-08-08 17:18:52 2130 1
翻译 Sprite Kit编程指南(4)-构建场景
构建场景对于场景的使用,你已经学过了很多的东西。这里对重要的事实再快速回顾一下:· 场景(SKScene对象),用来提供SKView对象要渲染的内容。· 场景的内容被创建成树状的节点对象。场景是根节点。· 在场景由视图呈现时,它运行动作并模拟物理,然后渲染节点树。· 你可以通过子类化SKScene类创建自定义的场景。心中有
2013-08-08 14:32:12 3034 1
翻译 Sprite Kit编程指南(3)-添加动作到节点
添加动作到节点绘制精灵很有用,但是一张静态图像只是一幅画,而不是一个游戏。为了添加游戏剧本(game play),你需要能够让精灵在屏幕周围移动并执行其他逻辑。Sprite Kit让场景动起来所使用的主要机制是动作。到目前为止,你已经看过了动作子系统的某些部分。现在,是时候更深入地研究如何构造和执行动作了。一个动作就是定义你想对场景所作的改变的对象。在大多数情况下,一个动作对执行该动作的节
2013-08-06 10:16:25 3111 1
翻译 Sprite Kit编程指南(2)-使用精灵
使用精灵精灵是用于创建大部分场景内容的基本构建块,所以在转到其他Sprite Kit节点类之前先了解精灵是有用的。精灵用SKSpriteNode对象表现。一个SKSpriteNode对象,要么绘制成一个由纹理映射(mapped)的矩形,要么绘制成一个彩色无纹理的矩形。纹理精灵更常见,因为它们代表了你把自定义插图引进场景的主要方式。这个自定义插图可能代表你的游戏的人物角色、背景元素甚至是用户界面
2013-08-02 16:59:08 4179 6
翻译 Sprite Kit编程指南(1)-深入Sprite Kit
深入Sprite Kit学习Sprite Kit最好的方法是在动作中看它。此示例创建一对场景和各自的动画内容。通过这个例子,你将学习使用Sprite Kit内容的一些基础技术,包括:· 场景在一个基于Sprite Kit的游戏中的角色。· 如何组织节点树来绘制内容。· 使用动作让场景内容动起来。· 如何添加交互到场景。·
2013-07-26 13:19:17 4584 1
翻译 Sprite Kit编程指南(0)-简介
关于Sprite Kit重要提示: 这是API或开发技术的一个初版文档。虽然本文档的技术准确性已被审阅过,但这还不是最终版本。这个苹果的机密信息仅用于适用的苹果开发者计划的注册会员。苹果公司提供这些机密信息来帮助你计划采用本文所述的技术和编程接口。此信息如有变更,根据这份文档实现的软件,应该用最终的操作系统软件和最终文档进行测试。本文档的新版本可能会与API或技术的未来种子一起提供。
2013-07-22 10:11:30 3104 1
原创 Xcode4修改工程(项目)名称
随着开发的进展,有时候我们可能需要更改工程的名称(比如为了区分iPhone版,在iPad版后加“HD”)。可通过以下命令路径进行:选中工程->View—>Utilities—>Show File Inspector,在右边的Project Name中输入新的名称就可以了。此时Xcode会弹出一个重构对话框,确定即可。
2013-07-22 09:02:23 4966 2
翻译 跟Google学习Android开发起始篇文章索引(包括整章PDF下载)
跟Google学习Android开发-起始篇-构建你的第一个应用程序(1)跟Google学习Android开发-起始篇-构建你的第一个应用程序(2)跟Google学习Android开发-起始篇-构建你的第一个应用程序(3)跟Google学习Android开发-起始篇-构建你的第一个应用程序(4)跟Google学
2013-07-05 15:09:30 2273
翻译 跟Google学习Android开发-起始篇-用碎片构建一个动态的用户界面(4)
4.4与其它碎片通信为了重用碎片UI组件,你应该把它们每个建立成一个完全独立的、模块化的组件,让它定义自己的布局和行为。一旦你定义了这些可复用的碎片,您可以将它们与活动关联起来,并将它们连接到应用程序逻辑来实现整体复合UI通常情况下,你会想让一个碎片与另一个通信,例如根据用户事件改动内容。所有碎片到碎片的通信是通过相关联的活动进行的。两个碎片永远不应该直接通信。定义一个
2013-07-05 14:54:43 1634
翻译 跟Google学习Android开发-起始篇-用碎片构建一个动态的用户界面(2)
4.2 创建一个碎片你可以把一个碎片考虑成活动的一个模块化的部分,它有自己的生命周期,接收自己的输入事件,您可以在活动运行时添加或删除它(有点像一个你可以在不同的活动中重用的“子活动”)。这节课展示如何使用支持库扩展Fragment类,使您的应用程序对运行低于Android 1.6版本系统的设备保持兼容。注:如果你由于其他原因决定你的应用程序需要的最低API级别为11或更高
2013-07-05 11:03:49 1808 1
翻译 跟Google学习Android开发-起始篇-用碎片构建一个动态的用户界面(1)
4用碎片构建一个动态的用户界面要在Android上创建一个动态的和多面板(multi-pane)的用户界面,你需要把UI组件和活动行为封装成模块,让模块可以添加到或者抽离你的各个活动。您可以使用碎片(Fragment)类创建这些模块,这行为有点像一个嵌套的活动,可以定义自己的布局和管理自己的生命周期。当一个碎片指定它自己的布局,它可以与活动内的其他碎片用不同的组合进行配置,来为不同
2013-07-05 10:14:19 2165
原创 InputStream重用技巧(利用ByteArrayOutputStream)
有时间我们需要对同一个InputStream对象使用多次。比如,客户端从服务器获取数据 ,利用HttpURLConnection的getInputStream()方法获得Stream对象,这时既要把数据显示到前台(第一次读取),又想把数据写进文件缓存到本地(第二次读取)。但第一次读取InputStream对象后,第二次再读取时可能已经到Stream的结尾了(EOFException)或者Str
2013-07-04 10:59:47 17712 7
原创 Xcode编译js警告的处理
使用UIWebView加载本地html页面,如果用到本地的js文件,Xcode(4.6)编译时提示 warning : No Rule to process javascript for architecture armv7 的警告,是因为Xcode把js文件当成要编译的源文件了(实际上它是资源文件!)。解决办法是,选择 Project-Targets-Build Phas
2013-06-28 10:24:45 1780
转载 让UILabel垂直方向顶端对齐
原文地址: http://www.cocoachina.com/bbs/read.php?tid=19211最简单的一句代码可以实现:Label.frame = [Label textRectForBounds:Label.frame limitedToNumberOfLines:0];如果用的地方比较多,可以子类化UILable方式扩展:
2013-06-26 10:41:15 2979
转载 Xcode非ARC项目中设置部分文件ARC支持
原文地址:http://blog.csdn.net/lixiangflyin/article/details/8771077ARC是什么 ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting)。简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引用计数的代码可以自动地由编译
2013-06-25 14:48:48 1870
翻译 跟Google学习Android开发-起始篇-与其它应用程序交互(3)
6.3允许其它应用程序启动你的活动前两节课关注故事的一边:从你的应用程序启动另一个应用程序的活动。但是,如果你的应用程序可以执行一个对另一个应用程序可能是有用的操作,你的应用应该准备响应来自其他应用程序请求的操作。例如,如果你构建一个可以与用户的朋友共享信息或照片的社交应用程序,你最好能支持ACTION_SEND意图,这样用户就可以从另一个应用程序发起一个“分享”的操作来启动您的应用程
2013-06-24 10:48:38 1720
翻译 跟Google学习Android开发-起始篇-与其它应用程序交互(2)
6.2从活动获取结果启动另一个活动不必是单向的。您也可以启动另一个活动,并接收一个结果回来。为了接收一个结果,调用startActivityForResult()(而不是startActivity())。例如,您的应用程序可以启动照相机应用程序,并接收拍摄的照片作为结果。或者,您可能启动通讯录应用程序,让用户选择一个联系人,您会收到联系人详情作为结果。当然,响应的活动必须设计为
2013-06-21 17:00:06 1320
翻译 跟Google学习Android开发-起始篇-与其它应用程序交互(1)
6 与其它应用程序交互一个Android应用程序通常有多个活动。每一项活动都将显示一个用户界面,允许用户执行某种特定任务(如查看地图或者照片)。为了把用户从一个活动带到另一个,你的应用必须使用Intent定义您的应用程序做某些事情的“意图”。当你用某个方法,如startActivity(),给系统传递一个 意图,系统就使用意图来识别并启动相应的应用程序组件。使用意图,甚至可以让
2013-06-21 15:49:59 1771
翻译 跟Google学习Android开发-起始篇-共享内容(3)
7.3 添加一个简单的分享操作随着Android 4.0(API等级14)对ActionProvider的引入,在操作栏上实现有效且用户友好的分享操作,变得更加简单了。一个ActionProvider,一旦附在操作栏的某个菜单项,要同时处理该项的外观和行为。在使用ShareActionProvider的情况下,你只要提供了一个分享意图,它会完成剩下的工作。注: ShareAc
2013-06-17 11:19:59 1807
翻译 跟Google学习Android开发-起始篇-共享内容(2)
7.2 接收来自其他应用程序的内容正如你的应用程序可以将数据发送到其他应用程序,所以也可以很容易接收来自应用程序的数据。想想用户如何与你的应用程序交互,以及你要从其他应用程序接收什么样类型的数据。例如,一个社交网络应用程序可能会对从另一个应用程序接收文本内容感兴趣,像一个有趣的网页的URL。Google+ Android应用程序接受文字和单个或多个图像。有了这个程序,用户可以轻松地
2013-06-14 17:29:14 1553
翻译 跟Google学习Android开发-起始篇-共享内容(1)
7 共享内容 Android应用程序的其中一个伟大之处是它们相互通信与集成的能力。当某个功能并不是您的应用程序的核心,且它已经在其他应用程序中存在时,为什么要重新发明它呢?本课程涵盖了使用Intent API和ActionProvider对象在应用程序之间发送和接收内容的一些常见的方式。课程将内容发送到其他应用程序了解如何设置你的应用程序能够使用意图
2013-06-14 16:42:19 1760
翻译 跟Google学习Android开发-起始篇-保存数据(3)
5.3将数据保存在SQL数据库对于重复或结构化的数据,如联系人信息,将它们保存到数据库是理想选择。这节课假定您熟悉一般的SQL数据库,并帮助您开始在Android上使用SQLite数据库。在Android上,你需要使用数据库的API都在 android.database.sqlite包提供。定义一个模式(Schema)和合同(Contract)SQL数据库的
2013-05-23 11:47:45 2634 2
翻译 跟Google学习Android开发-起始篇-保存数据(2)
5.2 保存文件Android使用的文件系统,这是在其他平台上的基于磁盘的文件系统类似。这节课介绍了如何使用Android文件系统的File API 来读取和写入文件。一个File对象适合以从头到尾非跳跃的方式读取或写入大量的数据。例如,它适合图像文件或任何在网络上交换的东西。这节课在您的应用程序显示了如何执行基本的文件相关的任务。这节课假定您是熟悉Linux文件系统的基础知识
2013-05-22 17:22:57 2473
翻译 跟Google学习Android开发-工具篇-Android Studio入门
Android Studio入门提前预览Android Studio是一个基于IntelliJIDEA的新的Android开发环境。与Eclipse ADT插件相似,AndroidStudio提供了集成的Android开发工具用于开发和调试。除了你期望的IntelliJ的能力,AndroidStudio还提供:· 基于Gradle构建的支持。· An
2013-05-21 16:37:26 13679 2
翻译 跟Google学习Android开发-起始篇-管理活动的生命周期(4)
2.4重建活动在以下几个场景中,由于正常的应用程序的行为,你的活动会被销毁:当用户按下“ 返回“按钮,或您的活动调用finish()方法表示自身的销毁。当活动目前已停止而且在很长一段时间没有使用,系统也会销毁你的活动。或者如果前台活动需要更多的资源,系统必须关闭后台进程回收内存。当用户按下返回或活动结束自己,系统对该活动实例的概念就会永远消失,因为这些行为表明不再需要该活动了。然而
2013-05-17 17:09:15 1758
翻译 跟Google学习Android开发-起始篇-管理活动的生命周期(3)
2.3停止和重新启动活动正确地停止与重新启动您的活动,在活动生命周期中是一个重要的过程,它确保您的用户感知到你的应用永远是活动的,并没有丢失他们的进度。有几个关键场景,您的活动将会停止并重新启动:· 用户打开最近应用程序窗口,并从你的应用程序切换到另一个应用程序。你的应用程序中目前在前台的活动就停止。如果用户通过主屏幕启动图标或最近使用的应用程序窗口返回到您的应用程序,活
2013-05-17 17:05:59 1529
翻译 跟Google学习Android开发-起始篇-管理活动的生命周期(2)
2.2暂停和恢复活动在应用程序的正常使用过程中,位于前台的活动有时会被其他可视组件遮挡,导致活动暂停。例如,当打开一个半透明的活动(如一个对话框样式的活动)时,之前的活动就会暂停。只要活动仍然是部分可见的,但又不是当前的焦点活动,它会保持暂停。然而,一旦活动被完全遮挡和不可见时,它就会停止(在下一课中讨论)。在您的活动进入暂停状态时,系统调用活动的onPause()方法,它允许
2013-05-17 17:04:32 1349
翻译 跟Google学习Android开发-起始篇-管理活动的生命周期(1)
2 管理活动的生命周期当用户浏览、离开、重新回到你的应用程序,你的应用程序的 Activity实例在其生命周期的不同状态之间转换。例如,当您的活动的第一次启动时,它来到系统的前台,并接收用户关注。在这个过程中,Android系统对活动调用了一系列的生命周期方法,在活动中设置了用户界面和其他组件。如果用户执行一个动作启动另一个活动或切换到另一个应用程序,在活动移动到后台时(此时活动不再可
2013-05-17 17:02:44 1746
翻译 跟Google学习Android开发-起始篇-支持不同的设备(3)
3.3支持不同的平台版本虽然最新版本的Android往往为您的应用程序提供了最好的的API,但你应该继续支持旧版本的Android,直至更多的设备得到更新。这节课告诉你如何利用最新的API,同时继续支持旧版本。根据访问谷歌Play Store的Android设备数量,在平台版本 仪表板上定期更新,来显示运行每个Android版本的激活设备的分布。一般来说,支持约90%激活设
2013-05-15 10:46:36 1828 4
翻译 跟Google学习Android开发-起始篇-支持不同的设备(2)
3.2 支持不同的屏幕对Android设备屏幕进行分类,一般使用两个属性:尺寸和密度。你应该预料到你的应用程序将被安装在不同范围的尺寸和密度屏幕的设备上。因此,您应该包含一些可替换资源,针对不同的屏幕大小和密度,优化你的应用程序的外观。· 有四种普遍的尺寸:小(small),正常(normal),大(large),超大(xlarge)· 也有4种普遍的密
2013-05-15 10:44:34 1220
翻译 跟Google学习Android开发-起始篇-支持不同的设备(1)
3 支持不同的设备遍布在世界各地的Android设备有许多形状和大小。通过范围广泛的设备类型,您的应用程序有机会得到一个数量巨大的受众。为了能够在Android上尽可能地成功,你的应用需要适应不同的设备配置。你应该考虑的一些重要变化包括不同的语言、屏幕尺寸和Android平台的版本。这堂课教你如何使用基本的平台功能——利用替代资源和其他功能,让你的应用只使用一个单一的应用程
2013-05-15 10:42:11 1428
转载 统计整个Xcode工程代码行数
统计整个工程代码行数打开终端,用cd命令 定位到工程所在的目录,然后调用以下命名即可把每个源代码文件行数及总数统计出来:find . "(" -name "*.m" -or -name "*.mm" -or -name "*.cpp" -or -name "*.h" -or -name "*.rss" ")" -print | xargs wc -l其中,-name
2013-04-25 16:44:01 9104
Google官方Android开发教程-入门篇-中文翻译
2013-07-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人