自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Cwift的专栏

有勇气推倒柏林墙,激励更多iOS程序员走出舒适区

  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 swift语言IOS8开发战记20 Core Data1

Core Data字面意思就是核心数据,但它其实并不是一个数据库,它是一个框架,就像我们之前经常用到的Foundation一样,我们做持久化的时候,使用Core Data非常方便。下面展示的是Core Data框架的结构图:我们来新建一个项目进行添加core data的学习。    新建一个项目,在项目中添加new file的时候可以看到专门有一个Core Data的选项

2015-01-21 21:07:17 12476

原创 swift语言IOS8开发战记19 UIImagePickerController

我们接着上一话的内容来讲,首先在我们添加一个餐馆的页面中把点击的背景色取消掉使用的是以下语句:cell.selectionStyle = UITableViewCellSelectionStyle.None除了none之外,还有许多颜色的选项,大家可以自己试试。然后我们需要点击小相机的图片能打开我们的相册让我们选择图片,我们在选择的代理方法中增加一个我们自己定义的方法,代码如下:fun

2015-01-18 20:16:43 17111

原创 swift语言IOS8开发战记18 NavigationItem

上一话中我们设置了地图定位,最后把地图定位界面改成了导航栏呈现,导航栏的返回按钮我们想要改成没有字体的形式,修改导航栏的按钮样式要回到上一个页面中,所以我们在DetailViewController的viewDidLoad方法中加上如下代码: self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .P

2015-01-17 21:24:24 12705 3

原创 swift语言IOS8开发战记17 MKTableView

上一话中地图没能显示,我发现关了Xcode之后一段时间莫名其妙就可以用了,所以有真机还是要用真机调试啊,点开Map按钮,显示如下:我们想要地图实际起作用,即点击相应餐厅的Map后显示的是餐馆的地理信息,现在要把cell的location信息传给MapViewController,我们在MapViewController中创建存储属性好计算属性用来传值。代码如下:import UIK

2015-01-16 10:30:27 12250 4

原创 swift语言IOS8开发战记16 Protocol and Map

接着之前的内容来讲,我们在每个店铺的location后面增加一个地图定位功能,需要把label的尺寸也调节一下,调整后的DetailViewCell代码如下:import UIKitclass DetailTableViewCell: UITableViewCell { var keyLabel: UILabel! var valueLabel: UILabel!

2015-01-13 16:23:05 12153

原创 swift语言IOS8开发战记15 Animation Delay

前几话我们实现了Review按钮的功能,今天来实现Share按钮的功能,由于两个功能的相似性,所以新建一个控制器,ShareViewController类,把ReviewViewController类的代码复制过去进行修改,share中不需要transforView和label,删掉,然后把按钮改成四个放到基view中,代码如下:let buttonWidth:CGFloat = 60

2015-01-13 10:36:10 12222

原创 swift语言IOS8开发战记14 UIView Animation

这一话我们来增加一些动画效果,首先在上一话的基础上,我们想把我们的评价部分放到一个单独的view中,如下图中的红框部分建立一个全局变量transforView,定义为UIView类型,然后再viewDidLoad中初始化://transferView transforView = UIView(frame: CGRectMake(0, 100, 320, 200))

2015-01-12 11:17:52 12697 1

原创 swift语言IOS8开发战记13 Review Controller

前几话我们在程序中增加了一个顶部的导航栏,今天我们想要在底部增加一些功能,增加一个share和一个review的按钮。在DetailViewController中增加一个toolBar用来放置功能按钮,设置两个全局变量,表示功能栏的宽和高:let tooBarHeight:CGFloat = 44let tooBarWidth:CGFloat = 320然后在viewDidLoad方法

2015-01-11 16:48:39 1041

原创 swift语言IOS8开发战记12 Font Of Label

上一章我们实现了对Navigation的格式以及跳转后页面的tableView的设置,但是Cell的显示有一些需要注意的格式问题,比如如果我们要显示的文字过长,之前的做法没有设置,所以多余的文字会被省略掉,还有cell的字体是默认的,我们如何设置字体的格式,也就是font的设置。为了演示效果,我们去DataArray中把第一行数据的location的值改的很长,运行后的效果就变成下面的样子了:

2015-01-10 16:58:22 23167

原创 swift语言IOS8开发战记11 Set NavigationController

上一话我们把ViewController类中的信息用Model来展示,那么新一话我们来尝试页面间传值。首先来回顾一下我们现在工程里类的结构,如图:之前的做法是主页面点击每一行在新打开的页面中显示一个小黄人的表情和一个自定义的tableView.现在我们修改一下跳转页面的控制器,也就是DetailViewController这个类,上一话中我们创建了一个名为RestModel,现在我们要

2015-01-09 16:26:39 12077 3

原创 Swift语言IOS8开发战记10.Data Model

上一话中实现了两个控制器间的传值,最终效果如图:这是我们的主页面:在ViewController中我们主页显示的内容是放到不同的数组中的:var restaurantNames = ["cg1","cg2","cg3","cg4","cg5","cg6","cg7","cg8","cg9","cg10","cg11"] var restaurantImages

2015-01-09 10:42:56 8880

原创 Swift语言IOS8开发战记9.transfer data without stroyboard

上一话我们实现了通过导航和控制器进行页面间的跳转,但是后一个页面是空的,本话来实现在跳转的同时,前一个页面向后一个页面传值,相信这也是大家什么关注的问题。首先我们来试一下跳转后的页面显示一张固定的图片。在我们上一话写的跳转后的页面控制器中DetaiViewController中先设一个全局变量cgImageView来显示图片,实例化的过程写到viewDidLoad方法中,我们挑了一张图片来显示,代

2015-01-08 09:52:41 7852

原创 Swift开发笔记4.协议Protocal

Swift中的协议就是我们通常所说的接口,它连接了软件和软件模块,非常重要。首先定义一个协议:protocol CgProtocol { }协议也有基协议:protocol CgProtocol : NSObjectProtocol { }协议是可以多继承的。现在写一个协议方法,协议方法必须实现。比如我们写一个比较的方法protocol CgProto

2015-01-06 15:57:36 5459

原创 Swift开发笔记3.Swift中setter和getter的基本用法

Swift中有存储属性和计算属性两种。其中在计算属性中可以实现setter和getter方法,我们在playground中定义两个结构体:struct Point { var x = 0.0, y = 0.0}struct Size { var width = 0.0, hight = 0.0}假设这两个结构体要实现一个画图的功能。point是起点,siz

2015-01-05 21:55:35 9435

原创 Swift语言IOS8开发战记8.NavigationController

这一话我们要添加一个导航栏,添加导航控制器需要在初始化的时候添加。打开类AppDelegate,会看到一个叫application的方法。

2015-01-05 17:39:20 7711

原创 Swift语言IOS8开发战记7.Delete TableViewCell

之前演示了Alert和ActionSheet的用法,如果我们不想要某一行cell了,那么就需要删除选项。首先来体验一下Swift内置的删除方法。也是一个tableView的代理方法。func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRow

2015-01-04 15:00:46 7999

原创 Swift开发笔记2.浅谈闭包

一门计算机语言要支持闭包,需要有两个前提:1.支持函数类型,能够将函数作为参数或返回值传递。2.支持函数嵌套。这两个前提在Swift中都是满足的,下面展示一个函数嵌套func cal(opr :String)->(Int,Int)->Int { func add(a: Int,b: Int)->Int{ return a + b } func sub

2015-01-04 08:50:01 4999

原创 swift语言IOS8开发战记6.Alert&ActionSheet

今天来重点讲解一下Alert和ActionSheet的用法。Alert主要用来提示用户一些信息,而当用户除了需要看到消息之外,还需要做出反应,这时候就需要用到ActionSheet,也就是操作表。我们在前面的基础上继续进行,将之前的cell代理方法中调用的alertview删掉,重新编写一个ActionSheet。编写好的代码如下,稍后我将对代码进行解释。func tableView(tabl

2015-01-03 17:15:40 8686

原创 swift语言IOS8开发战记5.使用纯代码的方式实现tableViewCell

storyboad的拖拽关联给我们开发带来了很大的便利,但是在目前的很多公司进行IOS开发时是禁止员工使用storyboard的,纯代码的实现方式仍然是主流,对于Swift这样一门新兴语言,加强语言的使用,使用纯代码来实现,不仅迎合了目前公司的用人要求,也更有利于我们深入理解Swift语法。本话不会有什么新的功能展示,主要目的是用纯代码来实现之前的tableviewcell。首先要做的第一步就

2015-01-02 11:43:58 9414 1

原创 swift语言IOS8开发战记4.custom tableViewCell

第三话中讲解了如何利用系统内置的cell格式,这一话来谈谈如何自定义cell格式.在stroyboard中通过拖拽为cell添加内容,并且通过属性检测器修改样式,下面是我简单设置的一个自定义cell。因为cell是自定义的,所以需要创建一个文件与cell关联,新建一个文件,注意创建的是一个cocoa touch class,如下图所示在新建的cell的代码中添加界面上的ce

2015-01-02 09:39:20 8602 5

原创 swift语言IOS8开发战记3.tableViewCell

接着第二话的tableview来说,设计tableview的cell。tableview的datasource是UItableViewDataSource,代理方法是不是UItableView,而是用tableView,方法很多,我们选取我们需要的。使用第二话的代码,下面来试一下改变行的高度。使用代理方法如下:func tableView(tableView: UITableView, h

2015-01-01 17:20:28 8527 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除