我的iphone开发学习笔记(九): 使用NSUserDefaults读写用户默认设置

今天练习的目的是:

1。 使用NSUserDefaults来保存和读取用户的默认设置

练习的主要内容是:

       通过使用UIView的透明度数值来实现手电筒的效果;具体效果如下图所示。


     基本的原理就是:背景View设置为黑色,上面覆盖一个UIView, 通过slider来修改UIView的透明值。如果透明值越小,背景的黑色越明显,否则透明度越大,则背景透出的黑色越少,就呈现出白色;

1。 创建一个基于view_base_application, 项目名称为FlashLight

2.   在FlashLightViewController中声明三个UI控件

      UIView (覆盖在背景图上面的视图) 

      UISwitch(设置开关)

      UISlider(设置具体的透明值)

     同时声明函数 setLightSourceAlphaView

     修改uiView的透明数值

3. 链接UI控件、函数和File's Owner

    

4.  实现setLightSourceAlphaValue

-(IBAction)setLightSourceAlphaValue{
	NSLog(@"lightvalue%f",lightSlider.value);
	if (lightSwitch.on) {
		lightView.alpha = lightSlider.value;
	}else {
		lightView.alpha = 0;
	}

5. 然后本次练习的的主要内容

   在关闭当前view时,使用NSUserDefaults保存lightSwitch的开关状态、以及lightSlider.value具体透明度数值

   

-(void)viewDidDisappear:(BOOL)animated{
	NSLog(@"viewDidDisappear");
	NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
	[defaults setBool:lightSwitch.on forKey:kLightSwitch];
	[defaults setFloat:lightSlider.value forKey:kLightSlider];
	
	[super viewDidDisappear:YES];
}

   同时在程序启动时,读取有关开关和透明度数值的设置

   

- (void)viewDidLoad {
	NSLog(@"viewDidLoad");
	NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
	lightSwitch.on = [defaults boolForKey:kLightSwitch];
	lightSlider.value = [defaults floatForKey:kLightSlider];
    [super viewDidLoad];
}

这个例子完成了。

主要知识点:使用NSUserDefaults实现数据的保存和读取,相对比较简单。

声明:

1。上述例子代码来源于书籍<<Iphone开发入门经典>>,经过本人的实际练习通过。

2 需要本例子代码的童鞋,请留下电子邮件。

      
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值