ios设计一部WindowsPhone手机

main.m

  1. #import <Foundation/Foundation.h>
  2. #import "WindowsPhone.h"
  3. int main(int argc, const char * argv[])
  4. {
  5.  
  6. WindowsPhone * phone = [WindowsPhone new];
  7. phone->_color = WindowsPhoneColorGolden;
  8. phone->_size = 3.5;
  9. NSLog(@"%@",phone);
  10. [phone cameraWithFlashLightSatuts:WindowsPhoneFlashLightStatusOpen];
  11.  
  12. @autoreleasepool {
  13.  
  14. // insert code here...
  15. //NSLog(@"Hello, World!");
  16.  
  17. }
  18. return 0;
  19. }

WindowsPhone.h

  1. #import <Foundation/Foundation.h>
  2.  
  3. enum WindowsPhoneSize
  4. {
  5. WindowsPhoneSize3Point5,//屏幕尺寸3.5
  6. WindowsPhoneSize4Point0,//屏幕尺寸4.0
  7. WindowsPhoneSize5Point5,//屏幕尺寸5.5
  8. WindowsPhoneSize6Point0 //屏幕尺寸6.5
  9. };
  10. typedef enum WindowsPhoneSize WindowsPhoneSize;
  11.  
  12. enum WindowsPhoneColor
  13. {
  14. WindowsPhoneColorWhite,//用来存储WidowsPhone的颜色白色
  15. WindowsPhoneColorGolden,//用来存储WindowsPhone的颜色土豪金
  16. WindowsPhoneColorBlack //用来存储WindowsPhone的颜色黑色
  17. };
  18.  
  19. typedef enum WindowsPhoneColor WindowsPhoneColor;
  20.  
  21. enum WindowsPhoneFlashLightStatus
  22. {
  23. WindowsPhoneFlashLightStatusOpen,//闪关灯开
  24. WindowsPhoneFlashLightStatusClose,//闪光灯关
  25. WindowsPhoneFlashLightStatusAuto//自己主动模式
  26. };
  27.  
  28. typedef enum WindowsPhoneFlashLightStatus WindowsPhoneFlashLightStatus;
  29.  
  30. //记录电影播放的状态
  31. enum WindowsPhoneFilmPlayStatus
  32. {
  33. WindowsPhoneFilmPlayStatusStart,//状态:開始播放
  34. WindowsPhoneFilmPlayStatusPause,//状态:暂停播放
  35. WindowsPhoneFilmPlayStatusFastSpeed,//状态:快进
  36. WindowsPhoneFilmPlayStatusSlowSpeed, //状态:快退
  37. WindowsPhoneFilmPlayStatusLastFilm,//状态:上一部
  38. WindowsPhoneFilmPlayStatusNextFilm //状态:下一部
  39.  
  40. };
  41.  
  42. typedef enum WindowsPhoneFilmPlayStatus WindowsPhoneFilmPlayStatus;
  43.  
  44. @interface WindowsPhone : NSObject
  45. {
  46. @public
  47. /**用来存储WindowsPhone的颜色*/
  48. WindowsPhoneColor _color;
  49.  
  50. /**用来存储WindowsPhone的尺寸大小*/
  51. float _size;
  52.  
  53. /**用来存储WindowsPhone cpu的大小*/
  54. float _cpu;
  55. /**用来存储WindowsPhone ram内部存储的大小*/
  56. float _ram;
  57. }
  58.  
  59. //setter 方法
  60. -(void)setWindowsPhoneSize:(float)size;
  61.  
  62. /**打开闪光灯*/
  63. -(void)openFlashLight;
  64.  
  65. /**关闭闪光灯*/
  66. -(void)closeFlashLight;
  67.  
  68. /**自己主动模式*/
  69. -(void)flaseLightAuto;
  70.  
  71. /**拍照*/
  72. -(void)cameraWithFlashLightSatuts:(WindowsPhoneFlashLightStatus)flashLightStatus;
  73. /**看电影*/
  74. -(void)filmWithPlayStatus:(WindowsPhoneFilmPlayStatus)WindowsPhoneFilmPlayStatus;
  75. /**发邮件*/
  76. -(void)sendEmail;
  77.  
  78. @end

WindowsPhone.m

  1. #import "WindowsPhone.h"
  2.  
  3. @implementation WindowsPhone
  4. /**打开闪光灯*/
  5. -(void)openFlashLight
  6. {
  7. //打开闪光灯
  8. NSLog(@"打开闪光灯");
  9. }
  10.  
  11. /**关闭闪光灯*/
  12. -(void)closeFlashLight
  13. {
  14. //关闭闪光灯
  15. NSLog(@"关闭闪光灯");
  16. }
  17. /**自己主动模式*/
  18. -(void)flaseLightAuto
  19. {
  20. //自己主动模式
  21. NSLog(@"自己主动模式");
  22. }
  23. //拍照
  24. -(void)cameraWithFlashLightSatuts:(WindowsPhoneFlashLightStatus)flashLightStatus
  25. {
  26. //self keyword 谁调用指的就是谁 能够实现类的内部方法的调用
  27. if(flashLightStatus == WindowsPhoneFlashLightStatusOpen)
  28. {
  29. [self openFlashLight];
  30. //打开摄像头
  31. }
  32. else if(flashLightStatus==WindowsPhoneFlashLightStatusClose)
  33. {
  34. [self closeFlashLight];
  35. //关闭摄像头
  36. }
  37. else
  38. {
  39. [self flaseLightAuto];
  40. //自己主动模式
  41. }
  42.  
  43. NSLog(@"拍照了!
  44.  
  45. 笑一个!");
  46. //用switch来实现这个功能
  47. /*
  48. switch(flashLightStatus)
  49. {
  50. case WindowsPhoneFlashLightStatusOpen:
  51. [self openFlashLight];
  52. break;
  53. case WindowsPhoneFlashLightStatusClose:
  54. [self closeFlashLight];
  55. break;
  56. case WindowsPhoneFlashLightStatusAuto:
  57. [self flaseLightAuto];
  58. break;
  59. default:
  60. break;
  61. }
  62. */
  63.  
  64. }
  65.  
  66. //看电影
  67. -(void)filmWithPlayStatus:(WindowsPhoneFilmPlayStatus)WindowsPhoneFilmPlayStatus
  68. {
  69. if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusStart){
  70. //開始播放电影
  71. NSLog(@"開始播放电影");
  72. }
  73. else if (WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusPause)
  74. {
  75. //暂停播放
  76. NSLog(@"暂停播放");
  77. }
  78. else if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusFastSpeed)
  79. {
  80. //快进
  81. NSLog(@"快进");
  82. }
  83. else if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusSlowSpeed)
  84. {
  85. //快退
  86. NSLog(@"快退");
  87. }
  88. else if(WindowsPhoneFilmPlayStatus==WindowsPhoneFilmPlayStatusLastFilm)
  89. {
  90. //上一部电影
  91. NSLog(@"播放上一部电影");
  92. }
  93. else if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusNextFilm)
  94. {
  95. //下一部电影
  96. NSLog(@"播放下一部电影");
  97. }
  98. else
  99. {
  100. //退出
  101. NSLog(@"退出");
  102. }
  103.  
  104. }
  105. //setter 方法
  106. -(void)setWindowsPhoneSize:(float)size
  107. {
  108. _size = 3.5;
  109. }
  110.  
  111. //重写description方法
  112. //这里重写方法要注意是重写的是对象方法还是类的方法
  113. //用来调试
  114.  
  115. -(NSString *)description
  116. {
  117. return [NSString stringWithFormat:@"size = %f cpu = %f ram = %f ",_size,_cpu,_ram];
  118. }
  119. @end

ios设计一部WindowsPhone手机的更多相关文章

  1. 设计一部iphone手机用面向对象的方法

    main.m //编辑字体大小command + < //编译执行快捷键 com + R #import <Foundation/Foundation.h> #import &quo ...

  2. 学习iOS设计--iOS8的颜色、文字和布局学习

    在去年,Apple针对新时代用户彻底更新了其设计语言.现在的设计语言相对之前大为简化,能够让设计师将精力集中到动画和功能上,而不是繁复的视觉细节上. 很多人都曾问过我:设计应当如何入门?成为一名优秀设 ...

  3. 非官方的iOS设计指南

    非官方的iOS设计指南 有时候为iOS设计app并不是一件简单的事,但是如果你能找到正确的最新的苹果设备信息,并按照正确的方向,那么为iOS设计app或许会变得简单容易些. 关于这些指南 这些指南描述 ...

  4. iOS系统下 的手机屏幕尺寸 分辨率 及系统版本 总结

    今天  我对iOS系统下 的手机屏幕尺寸 分辨率 及系统版本做了一次系统总结 供大家参考. 首先 是系统:    随着iOS 系统不断升级,现在已经到iOS7.0了, 并且TA有了很多新变化,最震撼的 ...

  5. 【译】UI设计基础(UI Design Basics)--为iOS设计(Design for iOS)(二)

    2.1 为iOS设计(Design for iOS) iOS体现以下主题: 遵从:UI帮助用户理解界面内容并与内容交互,但绝不会与内容相互冲突. 清晰:文本在任何尺寸下都是清晰易读,图标精确易懂,装饰 ...

  6. 学习ios设计(1)

    两年前,苹果为现代的使用者完全改变了设计语言.对于设计者来说,这使得他们更容易关注动画和功能而不是其他的细枝末节. 我已经被问过很多次怎样开始设计或者是有什么捷径可以成为更好的设计师.虽然没有银弹,然 ...

  7. iOS设计指南

    备忘:iOS设计指南:http://www.ui.cn/detail/32167.html

  8. iOS设计 - 一款APP从设计稿到切图过程概述

    这篇文章站在GUI设计师的角度概述了APP从项目启动到切片输出的过程,相当于工作流程的介绍.这里写的不是一种规范,只是一种工作方法,加上技术的更新是非常快的,大家在具体工作中,一定要灵活运用. 这里我 ...

  9. Android,ios,WP三大手机系统对比

    从前,我以为.一个手机系统只是一个系统的UI风格,没什么不同的.然而,在我混合使用这三个手机系统之后,才明白,一个手机系统远不只一个UI那么简单,而真的是可以称之为一个“生态”. 首先祭出三台经典设备 ...

随机推荐

  1. Python 40 数据库-外键约束 、多对一与多对多的处理

    mysql提供了 foreign key,专门用于为表和表之间 建立物理关联 思考 表里存储的是一条条的记录,两个表之间能产生的关系有哪些? 现有 A B两张表 1.多对一         2.一对一 ...

  2. Linux 安装配置JDK 、 MySQL 、nginx

    今天我来讲一下在Linux下各环境的搭建,主要就讲一下jdk.MySQL.和一个代理服务器nginx 1. jdk的安装配置 1)卸载自带openjdk 当我们拿到一个全新的ECS的时候上面有的会自带 ...

  3. 【LuoguP2210 USACO】 Haywire

    这种答案跟序列排列顺序有关的,n比较小的(稍微大一点的也可以),求最优解的,一般都可以随机化过 随机化不一定是模拟退火或是什么遗传蚁群 哪怕只是直接随机化一个序列,只要你随机的次数够多,它都能找到正解 ...

  4. layui框架 各种小结

    首先项目前端采用的是bootstrap和layui弹窗,验证,表格用的是bootstrapTable layui官方地址:http://www.layui.com/ 文档:http://www.lay ...

  5. android黑科技系列——Android中新型安全防护策略

    一.前言 最近有一个同学,发给我一个设备流量访问检测工具,但是奇怪的是,他从GP上下载下来之后安装就没有数据了,而在GP上直接安装就可以.二次打包也会有问题.所以这里就可以判断这个app应该是有签名校 ...

  6. JavaScript中变量的类型

    变量的类型是指变量的值所属的数据类型,可以是数值型.字符串型和布尔型等,因为JavaScript是一种弱类型的程序语言,所以可以把任意类型的数据赋值给变量. 下面是一个关于变量类型的例子.在这个例子中 ...

  7. 金立 M6 (GN8003) 解锁 BootLoader 进入第三方 recovery 刷机 ROOT

    首先下载好工具:http://url.cn/5EILbQn 备用连接 :http://pan.baidu.com/s/1c28j7k0 本篇教程教你如何傻瓜式解锁BootLoader并刷入recove ...

  8. Deutsch lernen (04)

    1. streng a. 严厉的,严格的 streng gegen sich selbst und gegen andere sein streng auf Ordnung halten 2. ver ...

  9. MSP430之section(1)

    1 Intro The smallest unit of an object file is a section. A section is a block of code or data that ...

  10. ADB 常用命令学习

    参考文档:https://www.cnblogs.com/bravesnail/articles/5850335.html非常感谢作者的分享,以下是我学习的记录.Android 常用adb 命令汇总- ...