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开发的学习路线起点不在这里,这些文件只会给你学习带来困扰. 打开一个项目,我们 ...
随机推荐
- Android configChanges使用方法
1. 在manifest文件里使用activity的默认属性.横屏竖屏时,惠重复调用onDestory和onCreate 造成不必要的开销.Android默认如此应该是为了适配不同的xml布局 ...
- Android微信智能心跳方案 Android微信智能心跳方案
原文地址: http://mp.weixin.qq.com/s?__biz=MzAwNDY1ODY2OQ==&mid=207243549&idx=1&sn=4ebe4beb81 ...
- sklearn.preprocessing OneHotEncoder——仅仅是数值型字段才可以,如果是字符类型字段则不能直接搞定
>>> from sklearn.preprocessing import OneHotEncoder >>> enc = OneHotEncoder() > ...
- Lists and strings
A string is a sequence of characters and a list is a sequence of values, but a list of characters is ...
- java动态导出PDF(利用itext)
项目基于ssm框架,使用itext动态导出pdf文件: 1.引入两个jar包:itextpdf-5.5.5.jar.itext-asian-5.2.0.jar 说明: 1.itextpdf-5.5.5 ...
- Windows 相关
Open the Windows Update troubleshooter If your computer is having problems finding and installing op ...
- NodeJS学习笔记 进阶 (1)Nodejs进阶:服务端字符编解码&乱码处理(ok)
个人总结:这篇文章主要讲解了Nodejs处理服务器乱码及编码的知识,读完这篇文章需要10分钟. 摘选自网络 写在前面 在web服务端开发中,字符的编解码几乎每天都要打交道.编解码一旦处理不当,就会出现 ...
- .ashx 实现自动路由和参数填充
在Mvc中访问控制器,参数填充和路由控制都非常方便,但之前项目用的是webFrom,和js交互的ashx页面,路由非常麻烦要根据传进来关键字来做switch,参数填充更坑,要一个一个去form中取出来 ...
- Android Studio的Signature Versions选择,分别是什么意思
转自原文 Android Studio的Signature Versions选择,分别是什么意思 打包一个文件的签名版本, 选V1打包出来的app是jar的(一般这种就是当做第三方导入项目来用的), ...
- cocoapods的安装,使用,卸载,以及你可能会遇到的坑..
首先, 不会用cocoapods的话如过你接手某些新项目是用cocoapods写的你会疯, 其次他真的非常好用, 当然某些坑也是存在的,比方你用它导入了AFNetwork然后你须要改动一些AF的内部的 ...