iOS 之 Core Data实践 1

1,新建一个项目,勾选core data

2,删除默认的viewcontroller,新添加一个table view controller,并给其创建一个类TableViewController:UITableViewController

3,给table view controller嵌入一个Navigation Controller

4,在table view controller的导航栏右上角嵌入一个bar button,system item属性设置为add

5,拖线给add按键增加一个“addName”事件

6,在TableViewController中新建一个数组保存数据:

  var names = [String]()

7,给TableView中的cell的identyfier属性设为“cell”

8,viewDidLoad中,设置页面title

  title = "姓名列表"

9,配置tableview

  numberOfSectionsInTableView:

  return 1

  numberOfRowsInSection:

  return userName.count

  cellForRowAtIndexPath:

let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath)
      cell.textLabel?.text = names[indexPath.row]
      return cell

10,编写add的方法,添加数据

@IBAction func addName(sender: AnyObject) {
        let alert = UIAlertController(title: "添加新姓名", message: "请输入一个姓名", preferredStyle: UIAlertControllerStyle.Alert)
        let saveAction = UIAlertAction(title: "保存", style: UIAlertActionStyle.Default) { (action:UIAlertAction) -> Void in
            let textfiled = alert.textFields![0] as UITextField
            self.names.append(textfiled.text!)
            let indexPath = NSIndexPath(forRow: (self.names.count-1), inSection: 0)
            self.tableView.insertRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.Automatic)
            print("存入了一条数据")
        }
        let cancelAction = UIAlertAction(title: "取消", style: UIAlertActionStyle.Default) { (action:UIAlertAction) -> Void in
            print("用户取消了输入")
        }
        alert.addAction(saveAction)
        alert.addAction(cancelAction)
        alert.addTextFieldWithConfigurationHandler { (textfield:UITextField) -> Void in
        }
        self.presentViewController(alert,animated:true,completion:nil)
    }

  到这里,可以添加数据,但数据不能永久保存

  

时间: 2024-10-03 23:28:38

iOS 之 Core Data实践 1的相关文章

iOS之Core Data及其线程安全

一.简介 Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象.在此数据操作期间,我们不需要编写任何SQL语句,这个有点类似于著名的Hibernate持久化框架,不过功能肯定是没有Hibernate强大的. 二.Core Data用法 对象介绍: 1, Managed Object Model Managed Object Model 是描述应用程序的数据模

iOS Core Data 数据迁移 指南

前言 Core Data是iOS上一个效率比较高的数据库框架,(但是Core Data并不是一种数据库,它底层还是利用Sqlite3来存储数据的),它可以把数据当成对象来操作,而且开发者并不需要在乎数据在磁盘上面的存储方式.它会把位于NSManagedObject Context里面的托管对象NSManagedObject类的实例或者某个NSManagedObject子类的实例,通过NSManagedObjectModel托管对象模型,把托管对象保存到持久化存储协调器NSPersistentSt

iOS Core data多线程并发访问的问题

大家都知道Core data本身并不是一个并发安全的架构:不过针对多线程访问带来的问题,Apple给出了很多指导:同时很多第三方的开发者也贡献了很多解决方法.不过最近碰到的一个问题很奇怪,觉得有一定的特殊性,与大家分享一下. 这个问题似乎在7.0.1以前的版本上并不存在:不过后来我升级版本到了7.0.4.app的模型很简单,主线程在前台对数据库进行读写,而后台线程不断地做扫描(只读).为此每个线程中各创建了一个NSManagedObjectContext. 这个模型其实有点奇怪,因为普遍的模型是

ios开发:Core Data概述

Core Data 概述 2005年的四月份,Apple 发布了 OS X 10.4,在这个版本中 Core Data 框架发布了.Core Data本身既不是数据库也不是数据库访问框架.相反,Core Data是一个完整的数据模型解决方案.可以简单理解为对持久层的封装,使得我们可以通过可视化建立数据模型,简化数据存取.即使不懂SQL语句,也依然可以使用Core Data.因为Core Data将底层的数据库SQL语句封装成了一套API,并可通过可视化操作来建立数据库的模型和表之间的关系,它甚至

IOS - CORE DATA的目录(xcode6)

? ?当使用coredata作为app的后台数据存储介质后,我们很想知道数据是否成功插入.为此,我想找到coredata.sqlite的文件 代码中指定的存储目录为: - (NSURL *)applicationDocumentsDirectory { ? ? ? return [[[NSFileManagerdefaultManager] URLsForDirectory:NSDocumentDirectoryinDomains:NSUserDomainMask] lastObject]; }

iOS开发过程中使用Core Data应避免的十个错误

原文出处: informit   译文出处:cocoachina Core Data是苹果针对Mac和iOS平台开发的一个框架,主要用来储存数据.对很多开发者来说,Core Data比较容易入手,但很难精通,如果没有正确的学习方法,你将很难真正理解它,更不用说精通了.很多开发者常常在这方面犯一些错误,而这篇文章列出了开发者在iOS开发过程中使用Core Data常见的一些错误,并对如何避免这些错误进行了分析.  1.不了解关键术语 对于iOS开发者来说,会使用Core Data是一项必备技能.

ios开发中的4种数据持久化方式【二、数据库 SQLite3、Core Data 的运用】

               在上文,我们介绍了ios开发中的其中2种数据持久化方式:属性列表.归档解档.本节将继续介绍另外2种iOS持久化数据的方法:数据库 SQLite3.Core Data 的运用: 在本节,将通过对4个文本框内容的创建.修改,退出后台,再重新回到后台,来认识这两种持久化数据的方式.效果图如下[图1]: [图1 GUI界面效果图] [本次开发环境: Xcode:7.2     iOS Simulator:iphone6S plus   By:啊左]     一.数据库SQL

IOS开发之--Core Data的使用(进阶)

CoreData的使用(进阶) 本次目标是创建一个应用程序,可以记录每次你保存的经纬度坐标,并且可以对这些坐标(我们保存为一个Event实体)进行编辑. 建立工程 步骤 创建一个Empty Application,起名叫Locations,选择Devices为iPhone,并且使用ARC: 添加CoreLocation.framework: 添加一个Storyboard文件,并在工程属性中选择Main Storyboard为这个文件: 至此,操作步骤完成. 对工程的理解 以上步骤完成后,我们的工

IOS开发之--Core Data的使用

Core Data基础知识 官方的说法是:Core Data is a schema-driven object graph management and persistence framework. 翻译过来的意思大概是:Core Data是一个模式驱动的对象图管理和持久化框架. 好吧,上面的字面意思不是很容易理解,那么我们从以下几个方面来帮助那些有其余开发经验的程序员树立一些观念: Core Data不是一个数据库,但是他可能使用一个数据库.默认情况下,Core Data将使用SQLite,