我的iOS学习历程 - UISegmentedControl
生活随笔
收集整理的這篇文章主要介紹了
我的iOS学习历程 - UISegmentedControl
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
今天學(xué)習(xí)的是UISegmentedControl,相當(dāng)于一個(gè)切換的分區(qū)欄,例如看小說(shuō)會(huì)分最新,最熱等,可以用此控件來(lái)進(jìn)行切換
1.初始化(用數(shù)組進(jìn)行初始化)并添加到視圖上
// 數(shù)組中初始化必須是字符串 或者 圖片 // 如果選用圖片初始化 必須使用鏤空?qǐng)DNSArray *stringArray = @[@"第一段",@"第二段",@"第三段"];// 分段按鈕UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:stringArray];segmentedControl.frame = CGRectMake(20, 100, 300, 50);segmentedControl.backgroundColor = [UIColor greenColor];[self.view addSubview:segmentedControl];[segmentedControl release];2.設(shè)置默認(rèn)選中(從0開始)
segmentedControl.selectedSegmentIndex = 1;3.修改選中的顏色
segmentedControl.tintColor = [UIColor brownColor];4.修改中間段的寬度
[segmentedControl setWidth:200 forSegmentAtIndex:1];下面一個(gè)實(shí)例來(lái)說(shuō)明怎么用UISegmentedControl切換頁(yè)面:
UIImage *image1 = [UIImage imageNamed:@"01-refresh"];UIImage *image2 = [UIImage imageNamed:@"02-redo"];UIImage *image3 = [UIImage imageNamed:@"03-loopback"];NSArray *imageArray = @[image1, image2, image3];UISegmentedControl *segmentedControlImage = [[UISegmentedControl alloc] initWithItems:imageArray];segmentedControlImage.backgroundColor = [UIColor orangeColor];segmentedControlImage.frame = CGRectMake(40, 300, 300, 50);segmentedControlImage.tintColor = [UIColor purpleColor];segmentedControlImage.selectedSegmentIndex = 0;[self.view addSubview:segmentedControlImage];[segmentedControlImage release];// 添加一個(gè)點(diǎn)擊事件// 選取UIControlEventValueChanged 實(shí)際上是檢測(cè)了索引的變化[segmentedControlImage addTarget:self action:@selector(segmentedAction:) forControlEvents:UIControlEventValueChanged];// 將三控制器設(shè)置為根視圖控制器的子控制器self.grayVC = [[GrayViewController alloc] init];[self addChildViewController:self.grayVC];[self.view addSubview:self.grayVC.view];[_grayVC release];self.blueVC = [[BlueViewController alloc] init];[self addChildViewController:self.blueVC];[self.view addSubview:self.blueVC.view];[_blueVC release];self.greenVC = [[GreenViewController alloc] init];[self addChildViewController:self.greenVC];[self.view addSubview:self.greenVC.view];[_greenVC release];// 最前面的應(yīng)該是segment// 然后是默認(rèn)選中按鈕對(duì)應(yīng)的視圖[self.view bringSubviewToFront:self.grayVC.view];[self.view bringSubviewToFront:segmentedControlImage];}- (void)segmentedAction:(UISegmentedControl *)segmentedControl {// 需求 判斷出 點(diǎn)擊了哪個(gè)分段按鈕// 每個(gè)分段按鈕 控制一個(gè)界面 每個(gè)界面是一個(gè)控制器來(lái)控制 并且可以切換界面NSLog(@"點(diǎn)了第%ld個(gè)",segmentedControl.selectedSegmentIndex);// 通過(guò)索引切換不同的界面switch (segmentedControl.selectedSegmentIndex) {case 0:[self.view insertSubview:self.grayVC.view belowSubview:segmentedControl];break;case 1:[self.view insertSubview:self.greenVC.view belowSubview:segmentedControl];break;case 2:[self.view insertSubview:self.blueVC.view belowSubview:segmentedControl];break;default:break;} }轉(zhuǎn)載于:https://www.cnblogs.com/888yf/p/4992718.html
總結(jié)
以上是生活随笔為你收集整理的我的iOS学习历程 - UISegmentedControl的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 需要自己调研的框架,以及需要学习的内容
- 下一篇: HDU 5510 Bazinga 暴力匹