iOS 开发之IPad的设计与实现
//
// main.m
// 6-ipad
// #import <Foundation/Foundation.h>
#import "Ipad.h"
int main(int argc, const char * argv[])
{ Ipad * ipad = [Ipad new];
ipad->_color = IpadColorBlack;
ipad->_size = 7.9;
NSLog(@"%@",ipad);
[ipad cameraWithFlashLightSatuts:IpadFlashLightStatusOpen]; return 0;
}
#import <Foundation/Foundation.h> enum IpadSize
{
IpadSize9Point5,//屏幕尺寸9.5
IpadSize7Point9,//屏幕尺寸7.9 };
typedef enum IpadSize IpadSize; enum IpadColor
{
IpadColorWhite,//用来存储Ipad的颜色白色
IpadColorBlack //用来存储Ipad的颜色黑色
}; typedef enum IpadColor IpadColor; enum IpadFlashLightStatus
{
IpadFlashLightStatusOpen,//闪关灯开
IpadFlashLightStatusClose,//闪光灯关
IpadFlashLightStatusAuto//自己主动模式
}; typedef enum IpadFlashLightStatus IpadFlashLightStatus; //记录电影播放的状态
enum IpadFilmPlayStatus
{
IpadFilmPlayStatusStart,//状态:開始播放
IpadFilmPlayStatusPause,//状态:暂停播放
IpadFilmPlayStatusFastSpeed,//状态:快进
IpadFilmPlayStatusSlowSpeed, //状态:快退
IpadFilmPlayStatusLastFilm,//状态:上一部
IpadFilmPlayStatusNextFilm //状态:下一部 }; typedef enum IpadFilmPlayStatus IpadFilmPlayStatus; @interface Ipad : NSObject
{
@public
/**用来存储Ipad的颜色*/
IpadColor _color; /**用来存储Ipad的尺寸大小*/
float _size; /**用来存储Ipad cpu的大小*/
float _cpu;
/**用来存储Ipad ram内部存储的大小*/
float _ram;
} //setter 方法
-(void)setIpadSize:(float)size; /**打开闪光灯*/
-(void)openFlashLight; /**关闭闪光灯*/
-(void)closeFlashLight; /**自己主动模式*/
-(void)flaseLightAuto; /**拍照*/
-(void)cameraWithFlashLightSatuts:(IpadFlashLightStatus)flashLightStatus;
/**看电影*/
-(void)filmWithPlayStatus:(IpadFilmPlayStatus)IpadFilmPlayStatus;
/**发邮件*/ -(void)downLoadSoft; -(void)installSoft; -(void)playGame; -(void)listen; -(void)searchInformation; -(void)editWord; @end
#import "Ipad.h" @implementation Ipad -(id)init
{
self = [super init];
if (self!=nil) {
_cpu = 1.5;
_ram = 1024;
}
return self;
}
/**打开闪光灯*/
-(void)openFlashLight
{
//打开闪光灯
NSLog(@"打开闪光灯");
} /**关闭闪光灯*/
-(void)closeFlashLight
{
//关闭闪光灯
NSLog(@"关闭闪光灯");
}
/**自己主动模式*/
-(void)flaseLightAuto
{
//自己主动模式
NSLog(@"自己主动模式");
}
-(void)sendEmail
{ }
//拍照
-(void)cameraWithFlashLightSatuts:(IpadFlashLightStatus)flashLightStatus
{
//self keyword 谁调用指的就是谁 能够实现类的内部方法的调用
if(flashLightStatus == IpadFlashLightStatusOpen)
{
[self openFlashLight];
//打开摄像头
}
else if(flashLightStatus==IpadFlashLightStatusClose)
{
[self closeFlashLight];
//关闭摄像头
}
else
{
[self flaseLightAuto];
//自己主动模式
} NSLog(@"拍照"); } //看电影
-(void)filmWithPlayStatus:(IpadFilmPlayStatus)IpadFilmPlayStatus
{
if(IpadFilmPlayStatus == IpadFilmPlayStatusStart){
//開始播放电影
NSLog(@"開始播放电影");
}
else if (IpadFilmPlayStatus == IpadFilmPlayStatusPause)
{
//暂停播放
NSLog(@"暂停播放");
}
else if(IpadFilmPlayStatus == IpadFilmPlayStatusFastSpeed)
{
//快进
NSLog(@"快进");
}
else if(IpadFilmPlayStatus == IpadFilmPlayStatusSlowSpeed)
{
//快退
NSLog(@"快退");
}
else if(IpadFilmPlayStatus==IpadFilmPlayStatusLastFilm)
{
//上一部电影
NSLog(@"播放上一部电影");
}
else if(IpadFilmPlayStatus == IpadFilmPlayStatusNextFilm)
{
//下一部电影
NSLog(@"播放下一部电影");
}
else
{
//退出
NSLog(@"退出");
} }
//setter 方法
-(void)setIpadSize:(float)size
{
_size = 3.5;
} -(void)downLoadSoft
{ } -(void)installSoft
{ } -(void)playGame
{ } -(void)listen
{ } -(void)searchInformation
{ } -(void)editWord
{ } //重写description方法
//这里重写方法要注意是重写的是对象方法还是类的方法
//用来调试 -(NSString *)description
{
return [NSString stringWithFormat:@"size = %f cpu = %f ram = %f ",_size,_cpu,_ram];
}
@end
iOS 开发之IPad的设计与实现的更多相关文章
- iOS开发之loadView、viewDidLoad及viewDidUnload的关系
iOS开发之loadView.viewDidLoad及viewDidUnload的关系 iOS开发之loadView.viewDidLoad及viewDidUnload的关系 标题中所说的3个方 ...
- 李洪强iOS开发之iOS好文章收集
李洪强iOS开发之iOS好文章收集 该文收集朋友们转发或自己的写的技术文章,如果你也有相关的好文章,欢迎留言,当好文章多的时候,我会对这些好文章进行分门别类 文章 简述 日期 直播服务配置 使用 ng ...
- 李洪强IOS开发之iOS好项目收集
李洪强IOS开发之iOS好项目收集 在这里收集一些最近出现的比较实用好玩的框架或者项目,会不断更新 项目 简述 日期 SCTableViewCell 类似与QQ侧滑删除Cell的Demo 201501 ...
- iOS开发之MVVM在项目中的应用
今天写这篇博客是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇博客的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦 ...
- iOS开发之Socket通信实战--Request请求数据包编码模块
实际上在iOS很多应用开发中,大部分用的网络通信都是http/https协议,除非有特殊的需求会用到Socket网络协议进行网络数 据传输,这时候在iOS客户端就需要很好的第三方CocoaAsyncS ...
- iOS开发之UISearchBar初探
iOS开发之UISearchBar初探 UISearchBar也是iOS开发常用控件之一,点进去看看里面的属性barStyle.text.placeholder等等.但是这些属性显然不足矣满足我们的开 ...
- iOS开发之UIImage等比缩放
iOS开发之UIImage等比缩放 评论功能真不错 评论开通后,果然有很多人吐槽.谢谢大家的支持和关爱,如果有做的不到的地方,还请海涵.毕竟我一个人的力量是有限的,我会尽自己最大的努力大家准备一些干货 ...
- iOS开发之 Xcode6 添加xib文件,去掉storyboard的hello world应用
iOS开发之 Xcode6.1创建仅xib文件,无storyboard的hello world应用 由于Xcode6之后,默认创建storyboard而非xib文件,而作为初学,了解xib的加载原理 ...
- iOS开发之info.pist文件和.pch文件
iOS开发之info.pist文件和.pch文件 如果你是iOS开发初学者,不用过多的关注项目中各个文件的作用.因为iOS开发的学习路线起点不在这里,这些文件只会给你学习带来困扰. 打开一个项目,我们 ...
随机推荐
- 【LeetCode-面试算法经典-Java实现】【064-Minimum Path Sum(最小路径和)】
[064-Minimum Path Sum(最小路径和)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 Given a m x n grid filled with ...
- vijos - P1732能量採集 (状态转移)
P1732能量採集 Accepted 标签:NOI2010[显示标签] 背景 描写叙述 栋栋有一块长方形的地.他在地上种了一种能量植物,这样的植物能够採集太阳光的能量. 在这些植物採集能量后,栋栋再使 ...
- springboot shiro配置
导入相关包(这里配合使用Ehcache缓存) <dependency> <groupId>org.apache.shiro</groupId> <artifa ...
- 洛谷P4180 [Beijing2010组队]次小生成树Tree
题目描述 小C最近学了很多最小生成树的算法,Prim算法.Kurskal算法.消圈算法等等.正当小C洋洋得意之时,小P又来泼小C冷水了.小P说,让小C求出一个无向图的次小生成树,而且这个次小生成树还得 ...
- 1570. [POJ3461]乌力波
★☆ 输入文件:oulipo.in 输出文件:oulipo.out 简单对比时间限制:1 s 内存限制:256 MB [题目描述] 法国作家乔治·佩雷克(Georges Perec,1 ...
- 关于iOS声音识别的框架
你好,我现在的项目中需要用到"声纹识别"这方面的需求,以前没做过,请教了.有没有这方面的框架和工具? 关于iOS声音识别的框架 >> ios这个答案描述的挺清楚的:ht ...
- MVC中几种常用的ActionResult
一.定义 MVC中ActionResult是Action的返回结果.ActionResult 有多个派生类,每个子类功能均不同,并不是所有的子类都需要返回视图View,有些直接返回流,有些返回字符串等 ...
- @property 的本质是什么?
将访问.变量.访问控制进行了绑定:编译器负责自动合成. @dynamic:不会自动合成成员变量和存取方法. @property 的本质是什么?@property = ivar + getter + s ...
- php八大设计模式之单例模式
单例模式的好处: 实例化后只得到一个对象,减少内存的开销. 实现单例模式: 提供一个私有的属性用来存储实例后的对象. 禁止外部实例化对象,提供公共的的方法,返回实例化后的对象. 避免继承此类,然后重写 ...
- 为什么 linux 上不能用 localhost 链接数据库?
因为 linux 连接的时候不是通过 tcp 协议,而是通过 sockect 来连接.所以 写localhost 之后就会默认去找 sockect 链接[此文件在 /var/lib/mysq ...