有沒有辦法擺脫UISegmentedControl的圓角或它是默認行爲?沒有圓角的UISegmentedControl?
5
A
回答
4
不,沒有API可以讓您控制段的佈局。
你也許可以試着查看UISegmentedControl的view.subviews,並根據你的需要嘗試改變它們。但從個人經驗來看,我不會這麼建議。如果蘋果未來改變了他們的訂單,你的應用可能會崩潰。最簡單的事情就是創建自定義的UIButtons,它們像切換按鈕一樣控制它們並像UISegmentedControls一樣控制它們(切換按鈕參見How to use a UIButton as a toggle switch)。
1
如果你想要一個不同的外觀,你可以繼承它,並在-drawRect:
做你自己的繪圖。使用Quartz/Core Graphics進行繪圖時參考Quartz 2D Programming Guide。
20
有一些很容易,你可以做些什麼來擺脫自己對UISegmentedControl圓形的垃圾......樣式更改爲「7」。我不是在開玩笑。我想通了這一點:
// Magic number ... (it's cheating, but it works)
mySegmentedBar.segmentedControlStyle = 7;
這是他們在的UISearchBar的範圍欄使用相同的控制風格,就像這樣:
但是,如果有人只想範圍吧,沒有搜索,他們通常堅持UISegmentedControl垃圾這樣的(帶有圓角):
或者更糟的是,這...
值得慶幸的是,通過切換到酒吧式的「7」,我們得到了停止線的確切外觀,沒有所有的子類和的drawRect兩輪牛車:
0
經過大量嘗試我得到了以下的解決方案,沒有任何背景圖像或子類化工作正常的:
mySegmentedControl.tintColor = [UIColor clearColor]; //Clear all border
//Draw your own border
mySegmentedControl.layer.borderColor = [UIColor blackColor].CGColor;
mySegmentedControl.layer.borderWidth = 1.0;
//Set tint color for selected subview
UIColor *tintcolor=[UIColor redColor];
int subViewIndex = 0; //index which is selected
[[_segmentControl.subviews objectAtIndex:subViewIndex] setTintColor:tintcolor];
1
通過添加一個合理寬度的邊框,你可以得到平方:
self.segmentedControl.tintColor = [UIColor brownColor];
self.segmentedControl.layer.cornerRadius = 0.0;
self.segmentedControl.layer.borderColor = [UIColor brownColor].CGColor;
self.segmentedControl.layer.backgroundColor = [UIColor colorWithWhite:1 alpha:0.75].CGColor;
self.segmentedControl.layer.borderWidth = 1.5f;
self.segmentedControl.layer.masksToBounds = YES;
相關問題
- 1. UIAlertView沒有圓角
- 2. 沒有圓角的Modal?
- 3. 圓角沒有JavaScript或CSS3
- 4. 圓角沒有迴應
- 5. 沒有邊界圓角的圓角邊框
- 6. UISegmentedControl沒有響應
- 7. 沒有邊框的圓角矩形UIButton
- 8. 沒有javascript的圓形角落後退
- 9. 爲什麼圓弧角沒有影響
- 10. CSS3圓角沒有采用HTC
- 11. 帶圓角矩形的NSBezierPath沒有光滑的邊角
- 12. IE7 +圓角有jQueryUI
- 13. 帶有圓角的UITextView
- 14. 圓角DataGrid角?
- 15. 創建具有圓角/圓角或倒角的文本的三維模型
- 16. 有沒有辦法在UIButton上只有一個圓角?
- 17. 的JTextArea圓角
- 18. NSTableView的圓角
- 19. 圓角的UIBarButtonItems
- 20. UITableView的圓角
- 21. 只有兩個圓角?
- 22. NSBezierPath圓角矩形有壞角落
- 23. 圓角
- 24. 圓角
- 25. 圓角
- 26. 圓角
- 27. 如何在沒有CSS的情況下圓桌子的角落?
- 28. UISegmentedControl按鈕之間沒有間隙
- 29. 圓角 - 基於Intranet沒有訪問到外面的世界 - 沒有JS/HTC
- 30. 如何在iframe上圓角圓角
這就像魔術。 – Joel 2012-05-17 04:29:13
這是否被認爲是私人API? – jjxtra 2012-11-26 22:21:47
@GregCombs它已經有一段時間了,想請你回答一下這個^,只要你有時間 – GangstaGraham 2013-08-28 14:07:41