ios设计一部WindowsPhone手机
main.m
#import <Foundation/Foundation.h> #import "WindowsPhone.h" int main(int argc, const char * argv[]) { WindowsPhone * phone = [WindowsPhone new]; phone->_color = WindowsPhoneColorGolden; phone->_size = 3.5; NSLog(@"%@",phone); [phone cameraWithFlashLightSatuts:WindowsPhoneFlashLightStatusOpen]; @autoreleasepool { // insert code here... //NSLog(@"Hello, World!"); } return 0; }
WindowsPhone.h
#import <Foundation/Foundation.h> enum WindowsPhoneSize { WindowsPhoneSize3Point5,//屏幕尺寸3.5 WindowsPhoneSize4Point0,//屏幕尺寸4.0 WindowsPhoneSize5Point5,//屏幕尺寸5.5 WindowsPhoneSize6Point0 //屏幕尺寸6.5 }; typedef enum WindowsPhoneSize WindowsPhoneSize; enum WindowsPhoneColor { WindowsPhoneColorWhite,//用来存储WidowsPhone的颜色白色 WindowsPhoneColorGolden,//用来存储WindowsPhone的颜色土豪金 WindowsPhoneColorBlack //用来存储WindowsPhone的颜色黑色 }; typedef enum WindowsPhoneColor WindowsPhoneColor; enum WindowsPhoneFlashLightStatus { WindowsPhoneFlashLightStatusOpen,//闪关灯开 WindowsPhoneFlashLightStatusClose,//闪光灯关 WindowsPhoneFlashLightStatusAuto//自己主动模式 }; typedef enum WindowsPhoneFlashLightStatus WindowsPhoneFlashLightStatus; //记录电影播放的状态 enum WindowsPhoneFilmPlayStatus { WindowsPhoneFilmPlayStatusStart,//状态:開始播放 WindowsPhoneFilmPlayStatusPause,//状态:暂停播放 WindowsPhoneFilmPlayStatusFastSpeed,//状态:快进 WindowsPhoneFilmPlayStatusSlowSpeed, //状态:快退 WindowsPhoneFilmPlayStatusLastFilm,//状态:上一部 WindowsPhoneFilmPlayStatusNextFilm //状态:下一部 }; typedef enum WindowsPhoneFilmPlayStatus WindowsPhoneFilmPlayStatus; @interface WindowsPhone : NSObject { @public /**用来存储WindowsPhone的颜色*/ WindowsPhoneColor _color; /**用来存储WindowsPhone的尺寸大小*/ float _size; /**用来存储WindowsPhone cpu的大小*/ float _cpu; /**用来存储WindowsPhone ram内部存储的大小*/ float _ram; } //setter 方法 -(void)setWindowsPhoneSize:(float)size; /**打开闪光灯*/ -(void)openFlashLight; /**关闭闪光灯*/ -(void)closeFlashLight; /**自己主动模式*/ -(void)flaseLightAuto; /**拍照*/ -(void)cameraWithFlashLightSatuts:(WindowsPhoneFlashLightStatus)flashLightStatus; /**看电影*/ -(void)filmWithPlayStatus:(WindowsPhoneFilmPlayStatus)WindowsPhoneFilmPlayStatus; /**发邮件*/ -(void)sendEmail; @end
WindowsPhone.m
#import "WindowsPhone.h" @implementation WindowsPhone /**打开闪光灯*/ -(void)openFlashLight { //打开闪光灯 NSLog(@"打开闪光灯"); } /**关闭闪光灯*/ -(void)closeFlashLight { //关闭闪光灯 NSLog(@"关闭闪光灯"); } /**自己主动模式*/ -(void)flaseLightAuto { //自己主动模式 NSLog(@"自己主动模式"); } //拍照 -(void)cameraWithFlashLightSatuts:(WindowsPhoneFlashLightStatus)flashLightStatus { //self keyword 谁调用指的就是谁 能够实现类的内部方法的调用 if(flashLightStatus == WindowsPhoneFlashLightStatusOpen) { [self openFlashLight]; //打开摄像头 } else if(flashLightStatus==WindowsPhoneFlashLightStatusClose) { [self closeFlashLight]; //关闭摄像头 } else { [self flaseLightAuto]; //自己主动模式 } NSLog(@"拍照了!笑一个!"); //用switch来实现这个功能 /* switch(flashLightStatus) { case WindowsPhoneFlashLightStatusOpen: [self openFlashLight]; break; case WindowsPhoneFlashLightStatusClose: [self closeFlashLight]; break; case WindowsPhoneFlashLightStatusAuto: [self flaseLightAuto]; break; default: break; } */ } //看电影 -(void)filmWithPlayStatus:(WindowsPhoneFilmPlayStatus)WindowsPhoneFilmPlayStatus { if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusStart){ //開始播放电影 NSLog(@"開始播放电影"); } else if (WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusPause) { //暂停播放 NSLog(@"暂停播放"); } else if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusFastSpeed) { //快进 NSLog(@"快进"); } else if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusSlowSpeed) { //快退 NSLog(@"快退"); } else if(WindowsPhoneFilmPlayStatus==WindowsPhoneFilmPlayStatusLastFilm) { //上一部电影 NSLog(@"播放上一部电影"); } else if(WindowsPhoneFilmPlayStatus == WindowsPhoneFilmPlayStatusNextFilm) { //下一部电影 NSLog(@"播放下一部电影"); } else { //退出 NSLog(@"退出"); } } //setter 方法 -(void)setWindowsPhoneSize:(float)size { _size = 3.5; } //重写description方法 //这里重写方法要注意是重写的是对象方法还是类的方法 //用来调试 -(NSString *)description { return [NSString stringWithFormat:@"size = %f cpu = %f ram = %f ",_size,_cpu,_ram]; } @end