博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
<ios开发入门> iTahDoodle任务管理程序
阅读量:5237 次
发布时间:2019-06-14

本文共 1577 字,大约阅读时间需要 5 分钟。

最近在学习<objective-c编程>这本书,根据书中的教程编写了这个简单Ios小程序iTahDoodle.这是一个简单的任务管理程序.可以通过"Insert"按钮来插入.后通过查阅官方文档,增加了delete的功能.

iTahDoodle共应用到了四个UI控件:两个Button分别用来插入,删除,一个TextField用来输入任务,一个TableView来显示任务列表.iTahDoodle需要将用户的任务信息保存在property list格式(xml格式)的文件中,因此需要使用一个C辅助函数来返回该文件的路径(NSString对象).

NSString *docPath(){    NSArray *pathList=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);        return [[pathList objectAtIndex:0] stringByAppendingPathComponent:@"data.td"];}

 

<Xcode可以识别#pragma mark指令,并根据该指令为文件中的代码分组.可以使用此命令来为代码分块.>

应用启动时时无法工作或接受输入的,启动完成后,UIApplication实例会向其委托对象发送<application:didFinishLaunchingWithOptions:>消息.凡是需要在程序能够和用户交互前就完成的初始化工作,都应该在该方法中实现.

增加和删除任务的代码如下

-(void)addTask:(id)sender{    //获取新任务的文字描述    NSString *t=[taskField text];        //如果taskField没有内容,就直接返回    if([t isEqualToString:@""]){        return;    }        //将新任务(字符串)加入tasks数组    [tasks addObject:t];    //刷新视图表格,显示新加入的任务    [taskTable reloadData];    //清空taskField    [taskField setText:@""];    //关闭键盘    [taskField resignFirstResponder];}-(void)deleteTask:(id)sender{
//indexPathForSelectedRow方法可以返回被选中的行存储的信息在数组中的位置 int numOfSelectedCell =[taskTable indexPathForSelectedRow].row; [tasks removeObjectAtIndex:numOfSelectedCell]; [taskTable reloadData];}

当用户按下某个UIControl对象,并且该对象可以成为第一相应对象,拥有第一响应对象状态的UIControl对象可以处理来自键盘的文字输入及摇动事件等,被按下的UIControl对象收到becomeFirstResponder消息,开始处理事件并保持这一状态,直到另一个响应对象的对象成为第一响应对象昂,或者是自己收到resignFirstResponder消息.表现在程序中就是当用户点击TextField的时候会弹出键盘,当点击done的时候,键盘会收起来.

 

最终效果如下,虽然很简陋,但终究是第一步.

   

转载于:https://www.cnblogs.com/EasyHeart/p/EasyHeart.html

你可能感兴趣的文章
待学习的
查看>>
ubuntu12 root账户自动登录
查看>>
C#认证二单元 第一题
查看>>
软件测试lab by石家名
查看>>
两条SQL语句
查看>>
Resin 4.0 部署SSL证书
查看>>
详解用CSS3制作圆形滚动进度条动画效果
查看>>
谷歌浏览器调试大全
查看>>
使用重构的方式制作出一个如下图的水平、垂直都居中短边为50px,长边为150px的红色十字架。...
查看>>
cookie注意事项
查看>>
基于tensorflow的逻辑分类
查看>>
关于css,js放置位置的问题
查看>>
python之路 -- 爬虫 -- Scrapy入门
查看>>
OC基础8:分类和协议
查看>>
C#依据进程名称获取进程的句柄?
查看>>
音乐TV2015校园招聘A第二大发行量(对中国科学院大学站)
查看>>
工作日志2014-08-28
查看>>
Google App Engine 学习和实践
查看>>
MySQL 常用到的几个字符处理函数
查看>>
20145203 盖泽双《Java程序设计》第一周的学习总结
查看>>