分类:Phone / IOS / Objective-C / Swift

iPhone/iPad: 3套必装播放Apps, MKV播放器

现 在iPhone 及iPad 的内置容量已上升到多达128GB,加上显示屏不断改进,已经成为不少追求高品质影片用户的常用播放工具,而最大问题就是iOS 装置并不支援mkv 格式,现在就为各位介绍三套软件,可以支援mkv 格式的同时,并不需要iTunes 影片的同步。 PlayerXtreme 这套软件可以支援各位最常使用的mkv 格式,让你的iPhone 及iPad 可以播放高画质电影,同时间,更可以让用户加入字幕,只要在iTunes 的iPhone App 中选取PlayerXtreme ,就可以直接拖动影片到软件内。 下載位置 KMPlayer 可以支援各位最常使用的… Read More

MySQL入门 (十五) : Triggers

1 Triggers的应用 在「cmdev」资料中有一个「emplog」表格,如果有人执行任何修改「cmdev.emp」表格资料的动作,都要新增一笔讯息到「cmdev.emplog」表格中,查询这个表格的资料,就可以知道在什么时候曾经修改过「cmdev.emp」表格中的资料: 栏位名称 型态 NULL 索引 预设值 其它资讯 说明 logno bigint(20) NO PRI NULL auto_increment 纪录编号 logdt timestamp NO… Read More

Android模拟器genymotion的安装和使用

Genymotion概述 Genymotion是一套完整的工具集,旨在为Android提供虚拟环境。开发人员、测试人员、销售人员甚至是游戏玩家都能从中获得众多实用功 能。 它可用于大多数操作系统:Windows、Linux以及MacOS X。它既易于安装,又具备强大的功能:遵循简单的安装流程指引、选择一款Android虚拟设备、启动工具,大功告成! Genymotion特色 最佳Android虚拟效果 OpenGL加速机制带来最佳3D性能 从Google Play安装应用程序 提供全屏选项,改善使用体验 完全可控 同时启动多台虚拟设备 提供多种管理传感器: 电池电量/状态 GPS 加速器 可直接利用Genymotion shell指挥虚拟设备传感器 与ADB完全兼容,用户可以从主机端控制虚拟设备… Read More

Swift中文教程(一)基础数据类型

基础类型 虽然Swift是一个为开发iOS和OS X app设计的全新编程语言,但是Swift的很多特性还是跟C和Objective-C相似 。 Swift也提供了与C和Objective-C类似的基础数据类型,包括整形Int、浮点数Double和Float、布尔类型Bool以及字符 串类型String。Swift还提供了两种更强大的基本集合数据类型,Array和Dictionary,更详细的内容可以参考:Collection Types。   跟C语言一样,Swift使用特定的名称来定义和使用变量。同样,Swift中也可以定义常量,与C语言不同的是,Swift中的常量更加强大,在编程时使用常量能够让代码看起来更加安全和简洁。   除了常见的数据类型之外,Swift还集成了Objective-C中所没有的“元组”类型,可以作为一个整体被传递。元组也可以成为一个函数的返回值,从而允许函数一次返回多个值。   Swift还提供了可选类型,用来处理一些未知的不存在的值。可选类型的意思是:这个值要么存在,并且等于x,要么根本不存在。可选类型类似于 Objective-C中指针的nil值,但是nil只对类(class)有用,而可选类型对所有的类型都可用,并且更安全。可选类型是大部分Swift 新特性的核心。   可选性类型只是Swift作为类型安全的编程语言的一个例子。Swift可以帮助你更快地发现编码中的类型错误。如果你的代码期望传递的参数类型是String的,那么类型安全就会防止你错误地传递一个Int值。这样就可以让编程人员在开发期更快地发现和修复问题。 常量和变量 常量和变量由一个特定名称来表示,如maximumNumberOfLoginAttempt… Read More

Swift中文教程(二)基本运算符

1、基本运算符 运算符是一种特定的符号或表达式,用来检验、修改或合并变量。例如,用求和运算符+可以对两个数字进行求和(如let i = 1 + 2);稍微复杂一点的例子有逻辑与操作符&& (如if enteredDoorCode && passedRetinaScan) ,自增长运算符 ++i (这是i=i+1的简写方式) Swift支持C标准库中的大多数运算符并提升了各自的兼容性,从而可以排除常见的编码错误!分配符 (=)不会返回一个值,这样可以防止你因粗心将赋值运算符 (=)写成 (==)而引起的错误!算术符(+、 -、 *、… Read More

Swift快速参考手册

来源于国外的一个个人博客,Swift Cheat Sheet and Quick Reference 小结了Swift中常用的一些语法供大家参考,主要包括: 类的定义 方法 对象的创建与使用 定义变量 控制流 字符串String例子 数组Array例子 字典Dictionary例子   来源:http://letsswift.com/2014/06/swift-fast-reference/… Read More

Swift与Objective-C的对比

系列(一)   WWDC 2014上苹果再次惊世骇俗的推出了新的编程语言Swift 雨燕, 这个消息会前没有半点风声的走漏。消息发布当时,会场一片惊呼,相信全球看直播的码农们当时也感觉脑袋被敲了一记闷棍吧。于是熬夜学习了Swift大法, 越看越想高呼 ” Swift大法好!“   程序员,最讲究的就是实事求是和客观,下面就开始对比两种语言。   首先要强调的是,Swift绝对不是解释性语言,更不是脚本语言,它和Objective-C,C++一样,编译器最终会把它翻译成C语言,也就是 说编译器最终面对的其实都是C语言代码( 这是千真万确,不容置疑的!!!所以不要看它长的想脚本语言,其实它是比Java, C#要高效的多的C语言!!!),但是Swift的强大之处在于它站在所有语言的肩膀上,吸取所有语言的精华。   这个系列我们先谈谈几个最基本的语法变化: Swift终于放弃了Objective-C那幺蛾子般的 [… Read More

Swift中文教程(三) 字符串和字符

一个字符串String就是一个字符序列,像”hello,world”,”albatross”这样的。Swift中的字符串是用String关键词来定义的,同时它也是一些字符的集合,用Character定义。   Swift的String和Character类型为代码提供了一个快速的,兼容Unicode的字符解决方案。String类型的初始化和使用都 是可读的,并且和C中的strings类似。同时String也可以通过使用+运算符来组合,使用字符串就像使用Swift中的其他基本类型一样简单。   1、字符串常量   在代码中可以使用由String预先定义的字符串常量,定义方式非常简单: let someString = “Some string literal value” 字符串常量可以包括下面这些特殊字符: 空字符,反斜杠,制表符t,换行符n,回车符r,双引号”和单引号’ 单字节Unicode字符,xnn,其中nn是两个十六进制数 双字节Unicode字符,unnnn,其中nnnn是四个十六进制数 四字节Unicode字符,Unnnnnnnn,其中nnnnnnnn是八个十六进制数… Read More

Swift中文教程(四) 集合类型

Swift 提供两种集合类型来存储集合,数组和字典。数组是一个同类型的序列化列表集合。字典是一个能够使用类似于键的唯一标识符来获取值的非序列化集合。   在Swift中,数组和字典的键和值都必须明确它的类型。这意味这数组和字典不会插入一个错误的类型的值,以致于出错。这也意味着当你在数组和字典中取回数值的时候能够确定它的类型。 Swift 使用确定的集合类型可以保证代码工作是不会出错,和让你在开发阶段就能更早的捕获错误。 note: Swift的数组 储存不同的类型会展示出不同的行为,例如变量,常量或者 函数和方法。更多的信息参见Mutability of Collections and Assignment 和 Copy Behavior for Collection Types.… Read More

Swift中文教程(五)控制流

Swift提供了所有C语言中相似的控制流结构。包括for和while循环;if和switch条件语句;break和continue跳转语句等。   Swift还加入了for-in循环语句,让编程人员可以在遍历数组,字典,范围,字符串或者其它序列时更加便捷。 相对于C语言,Swift中switch语句的case语句后,不会自动跳转到下一个语句,这样就避免了C语言中因为忘记break而造成的错误。 另外case语句可以匹配多种类型,包括数据范围,元组,或者特定的类型等。switch语句中已匹配的数值也可以被用在后续的case语句体 中,where关键词还能被加入任意的case语句中,来增加匹配的方式。   1、for循环 for循环可以根据设置,重复执行一个代码块多次。Swift中提供了两种for循环方式: for-in循环,对于数据范围,序列,集合等中的每一个元素,都执行一次 for-condition-increment,一直执行,知道一个特定的条件满足,每一次循环执行,都会增加一次计数   for-in循环 下面的例子打印出了5的倍数序列的前5项 C代码 for index in 1...5 {… Read More

Swift中文教程(六)函数

函数是执行特定任务的代码自包含块。给定一个函数名称标识, 当执行其任务时就可以用这个标识来进行”调用”。   Swift的统一的功能语法足够灵活来表达任何东西,无论是甚至没有参数名称的简单的C风格的函数表达式,还是需要为每个本地参数和外部参数设置复 杂名称的Objective-C语言风格的函数。参数提供默认值,以简化函数调用,并通过设置在输入输出参数,在函数执行完成时修改传递的变量。   Swift中的每个函数都有一个类型,包括函数的参数类型和返回类型。您可以方便的使用此类型像任何其他类型一样,这使得它很容易将函数作为参数传递给其他函数,甚至从函数中返回函数类型。函数也可以写在其他函数中来封装一个嵌套函数用以范围内有用的功能。   1、函数的声明与调用 当你定义一个函数时,你可以为其定义一个或多个命名,定义类型值作为函数的输入(称为参数),当该函数完成时将传回输出定义的类型(称为作为它的返回类型)。   每一个函数都有一个函数名,用来描述了函数执行的任务。要使用一个函数的功能时,你通过使用它的名称进行“调用”,并通过它的输入值(称为参数)来匹配函数的参数类型。一个函数的提供的参数必须始终以相同的顺序来作为函数参数列表。   例如在下面的例子中被调用的函数greetingForPerson,像它描述的那样 — 它需要一个人的名字作为输入并返回一句问候给那个人。 C代码 func sayHello(personName: String)… Read More

Swift中文教程(七) 闭包

闭包(Closures)是独立的函数代码块,能在代码中传递及使用。Swift中的闭包与C和Objective-C中的代码块及其它编程语言中的匿名函数相似。 闭包可以在上下文的范围内捕获、存储任何被定义的常量和变量引用。因这些常量和变量的封闭性,而命名为“闭包(Closures)”。Swift能够对所有你所能捕获到的引用进行内存管理。   NOTE 假如你对“捕获(capturing)”不熟悉,请不要担心,具体可以参考Capturing Values(捕获值)。   全局函数和嵌套函数已在 Functions(函数)中介绍过,实际上这些都是特殊的闭包函数 全局函数都是闭包,特点是有函数名但没有捕获任何值。 嵌套函数都是闭包,特点是有函数名,并且可以在它封闭的函数中捕获值。 闭包表达式都是闭包,特点是没有函数名,可以使用轻量的语法在它所围绕的上下文中捕获值。 Swift的闭包表达式有着干净,清晰的风格,并常见情况下对于鼓励简短、整洁的语法做出优化。这些优化包括: 推理参数及返回值类型源自上下文 隐式返回源于单一表达式闭包 简约参数名 尾随闭包语法   1、闭包表达式 嵌套函数已经在Nested… Read More

Swift中文教程(八) 枚举类型

枚举定义了一个常用的具有相关性的一组数据,并在你的代码中以一个安全的方式使用它们。 如果你熟悉C语言,你就会知道,C语言中的枚举指定相关名称为一组整数值。在Swift中枚举更为灵活,不必为枚举的每个成员提供一个值。如果一个值(被称为“原始”的值)被提供给每个枚举成员,则该值可以是一个字符串,一个字符,或者任何整数或浮点类型的值。 另外,枚举成员可以指定任何类型,每个成员都可以存储的不同的相关值,就像其他语言中使用集合或变体。你还可以定义一组通用的相关成员为一个枚举,每一种都有不同的一组与它相关的适当类型的值的一部分。 在Swift中枚举类型是最重要的类型。它采用了很多以前只有类才具有的特性,如计算性能,以提供有关枚举的当前值的更多信息,方法和实例方法提供的功能 相关的枚举表示的值传统上支持的许多功能。枚举也可以定义初始化,以提供一个初始成员值;可以在原有基础上扩展扩大它们的功能;并使用协议来提供标准功 能。 欲了解更多有关这些功能,请参见Properties, Methods, Initialization, Extensions, Protocols   1、枚举语法 使用枚举enum关键词并把他们的整个定义在一对大括号内: Java代码 enum SomeEnumeration { // enumeration… Read More