2013-07-10 27 views
1

所以基本上,我想創建一個分段控制器的四個圖像。UISegmentedController - 將段更改爲圖像

!圖像是:segment1_unselected,segment1_selected,segment2_unselected,segment2_selected。

我讀過許多教程這樣做,如果你有:會議背景選擇, 段背景未選中,中間段,左選擇權未選中,段中,未被勾選的狀態,選擇權,段中間,既留下&右側選中,段中間,左側&右側未選中,但我沒有這些。 (我認爲有可能在我的老師給我提供這些圖像後用4張圖片來完成)。

現在我已經設法添加圖像,但我不知道如何添加選定的圖像。

UISegmentedControl * segmentedCtrl = [[UISegmentedControl alloc] initWithFrame:CGRectMake(13, 130, 294, 34)]; 
[segmentedCtrl setBackgroundImage:[UIImage imageNamed:@"scr1_btneveryone"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; 
[segmentedCtrl setBackgroundImage:[UIImage imageNamed:@"scr1_btnfriends"] forState:UIControlStateSelected barMetrics:UIBarMetricsDefault]; 
[segmentedCtrl insertSegmentWithImage:[UIImage imageNamed:@"scr1_btneveryone1"] atIndex:0 animated:NO]; 
[segmentedCtrl insertSegmentWithImage:[UIImage imageNamed:@"scr1_btnfriends"] atIndex:1 animated:NO]; 

編輯:嗯,我有點傻......我所做的是我寫的「像我自己的(也就是選擇一個段)改變通過創建一個的ValueChanged動作,然後用setImage:forSegmentAtIndex :我已經改變了周圍的圖像我只是想有一些內置的方法,該

回答

0

無法發表評論,因此在這裏發帖

。。

您可以使用外觀專業版tocol,改變背景圖像。一些示例代碼:

[[UISegmentedControl appearance] setBackgroundImage:[UIImage imageNamed:@"toggle_blue.png"] forState:UIControlStateSelected barMetrics:UIBarMetricsDefault]; 

[[UISegmentedControl appearance] setBackgroundImage:[UIImage imageNamed:@"toggle_grey.png"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; 
+0

不完全。 setBackgroundImage將圖像設置爲全分段控制器(一個圖像適用於所有分段,通常是拉伸的),而我需要一個圖像用於segment1,另一個用於segment2。但是我自己編寫了它,在分段控件上添加了對ValueChanged的操作。 –