3 回答

TA貢獻1827條經(jīng)驗 獲得超4個贊
我在UISegmentcontrol中找到了一種為所選段添加顏色的簡單方法
發(fā)件人是UISegmentControl
for (int i=0; i<[sender.subviews count]; i++)
{
if ([[sender.subviews objectAtIndex:i]isSelected] )
{
UIColor *tintcolor=[UIColor colorWithRed:127.0/255.0 green:161.0/255.0 blue:183.0/255.0 alpha:1.0];
[[sender.subviews objectAtIndex:i] setTintColor:tintcolor];
}
else
{
[[sender.subviews objectAtIndex:i] setTintColor:nil];
}
}
檢查它為我工作

TA貢獻1850條經(jīng)驗 獲得超11個贊
這是將所選段更改為任何RGB顏色的絕對最簡單的方法。無需子類化或黑客入侵。
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
UIColor *newTintColor = [UIColor colorWithRed: 251/255.0 green:175/255.0 blue:93/255.0 alpha:1.0];
segmentedControl.tintColor = newTintColor;
UIColor *newSelectedTintColor = [UIColor colorWithRed: 0/255.0 green:175/255.0 blue:0/255.0 alpha:1.0];
[[[segmentedControl subviews] objectAtIndex:0] setTintColor:newSelectedTintColor];
此示例顯示了重要步驟:
將控件樣式設置為“ StyleBar”,這是工作所需的樣式
首先將整個控件的未選擇顏色設置為橙色
將所選線段的顏色設置為綠色
筆記:
步驟1和2可以在界面生成器中完成,也可以在所示的代碼中完成。但是,第3步只能在代碼中完成
像這樣用“ 123.0 / 255.0”這樣的符號設置顏色值只是使RGB值脫穎而出的一種方法,而不是UIColor要求的標準化浮點值(如果愿意,可以忽略它)
- 3 回答
- 0 關注
- 1410 瀏覽
添加回答
舉報