Chinaunix首页 | 论坛 | 博客
  • 博客访问: 90909
  • 博文数量: 22
  • 博客积分: 486
  • 博客等级: 下士
  • 技术积分: 262
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-07 19:26
文章分类

全部博文(22)

文章存档

2012年(22)

我的朋友

分类: 嵌入式

2012-07-18 14:18:31


点击(此处)折叠或打开

  1. UISlider *_uislider; //新建一个滑动条
  2.  UILabel *_uilabel; //新建一个label用来显示滑动的位置



  3. //滑动条
  4. -(void)testSlider
  5. {
  6.     NSLog(@"begin slider");
  7.     //设置滑动条slider的一些基本属性
  8.     _uislider = [[UISlider alloc]init];
  9.     _uislider.frame = CGRectMake(10, 365, 300, 50); //滑动条的位置,大小
  10.     _uislider.minimumValue = 0; //最小值
  11.     _uislider.maximumValue = 500; //最大值
  12.     _uislider.value = 0; //默认值
  13.     //sliderValueChanged事件
  14.     [_uislider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
  15.     //设置label的属性
  16.     _uilabel = [[UILabel alloc]initWithFrame:CGRectMake(_uislider.frame.origin.x, _uislider.frame.origin.y-10, 70, 20)];
  17.     [_uilabel setTextAlignment:UITextAlignmentCenter];
  18.     [_uilabel setBackgroundColor:[UIColor clearColor]];
  19.     //表示一开始为隐藏,不显示label,如果不用下面这句一开始进去是不显示label
  20.     [_uilabel setAlpha:0.f];
  21.      
  22.     //_uilabel.text = @"aaaaaaaa";
  23.     [self.view addSubview:_uislider];
  24.     [self.view addSubview:_uilabel];
  25. }

  26. -(void)sliderValueChanged:(id)sender
  27. {
  28.     
  29.     UIImageView *imageView = [_uislider.subviews objectAtIndex:2];
  30.     CGRect theRect = [self.view convertRect:imageView.frame fromView:imageView.superview];
  31.     [_uilabel setFrame:CGRectMake(theRect.origin.x-22, theRect.origin.y-38, _uilabel.frame.size.width, _uislider.frame.size.height)];

  32.     NSLog(@"slider value%f",_uislider.value);
  33.     
  34.     NSInteger v = _uislider.value+0.5;
  35.     //label的显示数字。为滑动条移动后的位置的value
  36.     [_uilabel setText:[NSString stringWithFormat:@"%d",v]];

  37.     //动画效果
  38.     [UIView animateWithDuration:0.5
  39.                      animations:^
  40.      {
  41.          
  42.          [_uilabel setAlpha:1.f];
  43.      }
  44.       completion:^(BOOL finished)
  45.      {
  46.          // 动画结束时的处理
  47.      }];

  48.     //[timer invalidate];
  49.     timer = nil;
  50.     
  51.     timer = [NSTimer scheduledTimerWithTimeInterval:1
  52.                                              target:self
  53.                                            selector:@selector(stopanimate)
  54.                                            userInfo:nil repeats:NO];
  55. }


  56. -(void)stopanimate
  57. {
  58.     [UIView animateWithDuration:0.5
  59.                      animations:^{
  60.                          [_uilabel setAlpha:0.f];
  61.                      }
  62.                      completion:^(BOOL finished){
  63.                          // 动画结束时的处理
  64.                      }];
  65. }

阅读(9890) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~