您的位置:首页 > 产品设计 > UI/UE

UI--UIControl控制器

2016-03-11 21:30 399 查看
#pragma mark - 分段控制器 SegmentedControl
//创建 有自己的初始化 initWithItems
UISegmentedControl *seg = [[UISegmentedControl alloc] initWithItems:@[@"王者",@"大师",@"钻石",@"白金",@"黄金"]];
//设置frame
seg.frame = CGRectMake(30, 100, 300, 40);
//设置背景颜色
seg.backgroundColor = [UIColor yellowColor];
//设置边框颜色
seg.tintColor = [UIColor blackColor];
//分段索引
seg.selectedSegmentIndex = 0;
//添加新的分段
[seg insertSegmentWithTitle:@"白银" atIndex:0 animated:YES];
//添加点击事件 ValueChange 值变化时 触发方法
[seg addTarget:self action:@selector(segAction:) forControlEvents:UIControlEventValueChanged];
//添加父视图
[self.view addSubview:seg];
[seg release];

#pragma mark - 滑动控制器(视频/音频播放)
UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(100, 300, 100, 100)];
slider.backgroundColor = [UIColor lightGrayColor];
//添加点击事件
[slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
//最大值
slider.maximumValue = 100;
//最小值
slider.minimumValue = -100;
//设置起始点
//value控制滑块位置
slider.value = -100;
//滑块左侧颜色
slider.minimumTrackTintColor = [UIColor blackColor];
//滑块右侧颜色
slider.maximumTrackTintColor = [UIColor redColor];
//滑块颜色
slider.thumbTintColor = [UIColor greenColor];
[self.view addSubview:slider];
[slider release];


#pragma mark - 开关 Swith
UISwitch *swith = [[UISwitch alloc] initWithFrame:CGRectMake(100, 400, 100, 100)];
swith.backgroundColor = [UIColor lightGrayColor];
//swith 大小 w:51 h:31
NSLog(@"%@", NSStringFromCGRect(swith.frame));
//开状态下的颜色
swith.onTintColor = [UIColor magentaColor];
//关状态下的颜色
swith.tintColor = [UIColor cyanColor];
//按钮颜色
swith. thumbTintColor = [UIColor blackColor];
//添加事件
[swith addTarget:self action:@selector(swithAction:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:swith];
[swith release];


#pragma mark - 页码控制器
UIPageControl *page = [[UIPageControl alloc] initWithFrame:CGRectMake(100, 500, 100, 40)];
page.backgroundColor = [UIColor blackColor];
//页数 保证控制器大小和页码数量一致
page.numberOfPages = 4;
//当前页
page.currentPage = 1;
//页码颜色
page.pageIndicatorTintColor = [UIColor redColor];
//当前页码颜色
page.currentPageIndicatorTintColor = [UIColor greenColor];
//添加事件
[page addTarget:self action:@selector(pageAction:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:page];
[page release];


#pragma mark - stepper 步进控制器(-/+)
UIStepper *stepper = [[UIStepper alloc] initWithFrame:CGRectMake(100, 600, 100, 40)];
stepper.backgroundColor = [UIColor yellowColor];
//value控制初值
stepper.value = 1;
//最小值
stepper.minimumValue = 0;
//最大值
stepper.maximumValue = 20;
//每次变化的大小
stepper.stepValue = 4;
//是否显示每次值变化
stepper.continuous = NO;
//按住时是否自动变化
stepper.autorepeat = NO;
//是否允许从Max回到Min
stepper.wraps = YES;
//添加事件
[stepper addTarget:self action:@selector(stepperAction:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:stepper];
[stepper release];


//分段控制器触发方法
- (void)segAction:(UISegmentedControl *)seg
{
NSLog(@"index: %ld", seg.selectedSegmentIndex);
//选中下标为2的分段 添加新的分段
if (seg.selectedSegmentIndex == 2) {
[seg insertSegmentWithTitle:@"" atIndex:0 animated:YES];

}
}

//滑动控制触发方法
- (void)sliderAction:(UISlider *)slider
{
NSLog(@"value: %f", slider.value);
}

//开关控制触发
- (void)swithAction:(UISwitch *)swith
{
//isOn获取BOOL类型变量返回值 可直接作为条件判断
NSLog(@"%d", swith.isOn);
if (swith.isOn) {
NSLog(@"开关开启");
}
}

//页码控制器触发方法
- (void)pageAction:(UIPageControl *)page
{
//打印当前页数
NSLog(@"current: %ld", page.currentPage);

}

//步进控制器触发方法
- (void)stepperAction:(UIStepper *)stepper
{
NSLog(@"%f", stepper.value);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: