`
lihao312
  • 浏览: 479613 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

IOS基础知识记录五(简单手电筒)

阅读更多
一个简单的手电筒实例

1.在xcode中使用模板Single view Application 新建一个Light项目

2.在MainStoryboard.storyboard里面规划三个控件, 一个开关(UISwitch), 一个控制控制亮度(UISlider),一个控制显示(UIView. 先设置Scene中的视图的alpha = 1.0 即默认为黑色

3.分别对switchOn和slider的value changed触发同一个事件 setLightAlphaValue
 - (IBAction)setLightAlphaValue:(id)sender {
    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    
    [userDefaults setBool: switchOn.on forKey: @"isOn"];
    [userDefaults setFloat: slider.value forKey: @"sliderValue"];
    
    [userDefaults synchronize];
   //以上操作只是设置客户的一些默认操作。如:设置开关的默认状态, 手电筒的亮度
   //方便下次打开时, 记住上次操作的结果
    
    if (switchOn.isOn) {
        light.alpha = slider.value;
    }else {
        light.alpha = 0.0;
    }
}


4.在viewDidLoad中调用一个初始化方法。该方法用来初始化手电筒的一些显示参数
//加载上次操作结果
- (void)initBirghtnessAndSwithOn {
    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    
    switchOn.on = [userDefaults boolForKey: @"isOn"];
    slider.value = [userDefaults floatForKey: @"sliderValue"]];
    
    if ([userDefaults boolForKey: @"isOn"]) {
        light.alpha = [userDefaults floatForKey: @"sliderValue"]];
    }else {
        light.alpha = 0.0;
    }
}


5.如果你喜欢可以把项目中一些常用的常量采用宏定义
#define switchOnOff @"isOn"
#define sliderValue @"sliderValue"

//这样可以替换项目中的常量, 变于统一操作
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics