iOS开发之七:常用控件--UISlider、UISegmentedControl、UIPageControl的使用

时间:2024-03-31 08:04:14

一、UISlider的使用

其实UISlider在iOS开发中用的似乎不是很多,我们看到的用到的地方多是音乐播放器的音量控制,以及视频播放器中的音量控制。

还是记录一下吧!

1、常用属性

// 设置获取slider的value值
@property(nonatomic) float value;
// 设置slider的最小值
@property(nonatomic) float minimumValue;
// 设置slider的最大值
@property(nonatomic) float maximumValue;
// 设置图片
@property(nonatomic,retain) UIImage *minimumValueImage;
// 设置图片
@property(nonatomic,retain) UIImage *maximumValueImage;
// 设置slider的value值,是否存在动画
- (void)setValue:(float)value animated:(BOOL)animated;

好像常用的就这么多,上面的minimumValue和maximunValue,可以为大于1的数字。

2、代码创建UISlider的实例代码如下:

UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(20, 0,
150, 25)];
[slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
slider.maximumValue = 100;
slider.minimumValue = 0;
slider.value = 50;

二、UISegmentedControl 的使用

UISegmentedControl  是分段控件,可以用来控制页面切换。它是长这样的:iOS开发之七:常用控件--UISlider、UISegmentedControl、UIPageControl的使用

示例代码如下:

NSArray *array = [NSArray arrayWithObjects:@"选择",@"搜索",@"工具", nil];
UISegmentedControl *segmentCtrl = [[UISegmentedControl alloc]
initWithItems:array];
segmentCtrl.frame = CGRectMake(20, 0, 150, 25);
segmentCtrl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentCtrl.selectedSegmentIndex = 0;
[segmentCtrl addTarget:self action:@selector(segmentAction:)
forControlEvents:UIControlEventValueChanged];

三、UIPageControl 的使用

UIPageControl 通常与UIScrollView连用,提示用户当前显示的页数。    iOS开发之七:常用控件--UISlider、UISegmentedControl、UIPageControl的使用

常用属性:

// 共有几个分页“圆圈”
@property(nonatomic) NSInteger numberOfPages;
// 显示当前的页
@property(nonatomic) NSInteger currentPage;
// 只存在⼀一页时,是否隐藏,默认为YES
@property(nonatomic) BOOL hidesForSinglePage;
// 刷新视图
- (void)updateCurrentPageDisplay;

实例代码如下:

UIPageControl *pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(0, 100, 320, 40)];
pageControl.numberOfPages = 1;
// pageControl.enabled = NO;
// pageControl.currentPage = 2;
// pageControl.hidesForSinglePage = YES;
[pageControl addTarget:self action:@selector(change:) forControlEvents:UIControlEventValueChanged];
pageControl.backgroundColor = [UIColor grayColor];
[self.window addSubview:pageControl];