UISlider的基本使用方法

UISlider提供了一个CGFloat的CGRange的范围的选择器,就是说给定一个CGRange,然后我们可以从中选择一个点。

其选择器样式如下:

UISlider选择器

上面这个样式当然不是iOS 7的自身样式,是经过一次定制后的。

UISlider跟UISwitch有点儿类似,都是继承自UIControl,这里步骤就跟UISwitch一样了,创建一个UISlider对象,然后将UISlider对象添加到一个UIView视图中。

既然UISlider是表示一个CGRange,那么就有一个最大值(maximumValue)和一个最小值(minimumValue),既然UISlider又是一个选择器,那么就有一个当前的选择值(value),这三个值都是UISlider的属性。

同样的,UISlider选择器被改变时,会触发UIControlEventValueChanged的事件,所以我们可以通过添加addTarget:::方法为事件添加处理方法。

就如前面所说,上面所展示的UISlider的样式是经过定制了的,所以我们同样可以定制一个UISlider的样式,样式同样有只更改颜色的样式和图片样式,更改UISlider的样式主要更改三部分:minimumTrackTintColor、maximumTrackTintColor和thumbTintColor。他们分别在UISlider对应的位置如下:

代码事例:

//
//  XCViewController.m
//  UISlider的基础知识
//
//  Created by Mr. Right on 13-10-17.
//  Copyright (c) 2013年 XCoder Studio. All rights reserved.
//

#import "XCViewController.h"

@interface XCViewController ()

@property (nonatomic, strong)UISlider * mySlider;
@property (nonatomic, strong)UILabel * myLabel;

@end

@implementation XCViewController

- (void)viewDidLoad
{
    [super viewDidLoad];

    // 创建一个UISlider
    _mySlider = [[UISlider alloc] initWithFrame:CGRectMake(0, 0, 200, 23)];
    // 定位UISlider的位置
    _mySlider.center = self.view.center;
    // 设置UISlider的最小值和最大值
    _mySlider.minimumValue = 2;
    _mySlider.maximumValue = 50;
    // 设置UISlider的初始值
    _mySlider.value = 12;
    // 为UISlider添加事件方法
    [_mySlider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];

    // 定义UISlider的样式
    _mySlider.minimumTrackTintColor = [UIColor redColor];
    _mySlider.maximumTrackTintColor = [UIColor greenColor];
    _mySlider.thumbTintColor = [UIColor blueColor];

    // 新建一个UILabel对象
    _myLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 20, 320, 50)];
    // 设置这个UILabel对象的字体为系统字体,大小为当前UISlider的值
    _myLabel.font = [UIFont systemFontOfSize:_mySlider.value];
    _myLabel.text = @"XCoder Studio";

    // 将UISlider添加到一个UIView视图中
    [self.view addSubview:_mySlider];
    // 将UILabel添加到一个UIView视图中
    [self.view addSubview:_myLabel];
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (void)sliderValueChanged:(id)sender {
    if ([sender isKindOfClass:[UISlider class]]) {
        UISlider * slider = (UISlider *)sender;
        _myLabel.font = [UIFont systemFontOfSize:slider.value];
    }
}

@end
时间: 2024-08-07 08:39:43

UISlider的基本使用方法的相关文章

制作进度条(UISlider)

怎样判断是否应当使用进度条 用进度条的主要目的是为了用一根管子的充满程度来直观地表示某种数值的百分比,进度条分为可拖动和不可拖动两种. 可拖动进度条和不可拖动进度条的原理几乎是一模一样,唯一的区别是可拖动进度条上多了一个拖动快和BoxCollider来接收事件,而不可拖动的进度条只能显示一个数字的百分比,无法由玩家去操控. 在判断是否应该使用进度条时,有以下的规律可以遵循: (1)如果某一种值,它有最大值,需要表达它当前的值的占比,这个时候用进度条会非常直观.此时应当用不可拖动的进度条.例如:角

UI--普通控件总结1--控件使用

本文目录 0.UIView常用的属性和操作 0_1.UIView常见的属性 0_2.UIView状态 0_3.UIView常用的方法 1.文本框UITextField和文本视图UITextView 1_1.文本框UITextField(几乎包含了iOS控件的所有的通用属性) 1_2.文本视图UITextView 1_3.键盘输入的处理程序 2.标签UILabel和按钮UIButton 2_1.标签UILabel 2_2.按钮UIButton 3.滑块UISlider.步进UIStepper和图像

UISlider控件属性及方法(转)

初始化一个Slider   UISlider *slider = [[UISlider alloc]initWithFrame:CGRectMake(0, 400,320 , 20)];   访问UISlider的值      slider.value = 3;  //设置slider的值 float value = slider.value;  //得到slider的值 [slider setValue:3 animated:YES];  //设置slider的值      slider.mi

【iOS开发-11】UISlider滑动条的属性介绍以及于标签联合使用实时显示变动值

(1)滑动条的左右端背景可以设置上一页下一页的图片: (2)滑动条的轨道图片可以设置为渐变等等图片. (3)滑动条因为值可以互动,所以addTarget:方法很重要,其中事件值变动UIControlEventValueChanged比较特殊,其实和按钮的按下事件是一个性质,都是一个事件而已. #import "ViewController.h" @interface ViewController () @end @implementation ViewController { //应为

ios中常见的几种控件.(UISlider,UISwitch,UIStepper,UISegmentedControl)

一.滑块控件(UISlider)  效果如下 注:系统原来效果如下 具体功能运用: ①创建滑块控件(UISlider),设置控件大小,并添加到window视图上,后释放 UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(20, 30, 280, 100)]; [self.window addSubview:slider];  [slider release]; ②设置最大值,最小值,以及开始时滑动条所在的位置 //设置最大

自定义UISlider的样式和滑块

又做完一个项目,遂到了写帖时间了,要跟大家分享的是:自定义UISlider的图片和滑块,先看一下效果: 然后是实现了,我们使用的是UISlider的setMinimumTrackImage,和setMaximumTrackImage方法来定义图片 的,这两个方法可以设置滑块左边和右边的图片的,不过如果用的是同一张图片且宽度和控件宽度基本一致,就不会有变形拉伸的后果,先看代码,写在 viewDidLoad中: //左右轨的图片 UIImage *stetchLeftTrack= [UIImage

UIProgressView 和 UISlider

UIProgressView 属性: 1.progress 当前进度值 2.progressTintColor 高亮颜色 3.trackTinkColor 轨道颜色 4.progressImage 进度条图片 5.trackImage 轨道图片 方法: //设置进度 - (void)setProgress:(float)progress animated:(BOOL)animated UISlider 属性: 1.value 当前值 2.minimumValue 最小值 3.maximumVal

IOS--UISlider的使用方法

IOS--UISlider的使用方法 // UISlider的常用方法 UISlider *oneSlider = [[UISlider alloc] init]; // 最常用 oneSlider.frame = CGRectMake(10, 20, 300, 30); // 设置位置和大小 注意:UISlider的高度可以随便设置,因为是不会变的 oneSlider.value = 30; // 初始值 oneSlider.minimumValue = 0; // 最小值 oneSlider

UISlider与UISwitch控件

1.UISlider控件就像其名字一样,是一个像滑动变阻器的控件: 上图中的圆圈可以移动,它处在不同的位置,这个UISlider会有不同的值.接下来的例子是关于UISlider的简单使用. (1)假设我们已经建立了一个Single View Application,打开ViewController.xib,在IB中添加一个UISlider控件和一个Label,这个Label用来显示Slider的值. (2)选中新加的Slider控件,打开Attribute Inspector,修改属性值,设置最