【问题标题】:Adding text above background image to uiswitch将背景图像上方的文本添加到 uiswitch
【发布时间】:2011-10-17 03:58:47
【问题描述】:

我的自定义 UISegmented 控件具有 [每个状态的] 背景图像。 How do I add text above the images [for each state, meaning that when index 0 will be selected I will have a specific color and font] ?

这是我的 UISegmented 控件的外观:

UISegmentedControl *customUISC=[[UISegmentedControl alloc] initWithItems:[[[NSMutableArray alloc] initWithObjects:@"ON",@"OFF",nil] autorelease]];

    [customUISC setFrame:CGRectMake(11,14,298,28)];
    customUISC.selectedSegmentIndex=0;
    customUISC.segmentedControlStyle=UISegmentedControlStyleBar;

    [customUISC setImage:[UIImage imageNamed:@"FirstTabActive.png"] forSegmentAtIndex:0];
    [customUISC setImage:[UIImage imageNamed:@"SecondTab.png"] forSegmentAtIndex:1];
    [customUISC addTarget:self action:@selector(checkOnOffState:) forControlEvents:UIControlEventValueChanged];

checkOnOffState 方法如下所示:

-(IBAction)checkOnOffState:(id)sender{

UISegmentedControl *iSeg=(UISegmentedControl *)sender;

if(iSeg.selectedSegmentIndex==0){

    [iSeg setImage:[UIImage imageNamed:@"FirstTabActive.png"] forSegmentAtIndex:0];
    [iSeg setImage:[UIImage imageNamed:@"SecondTab.png"] forSegmentAtIndex:1];
}
else {

    [iSeg setImage:[UIImage imageNamed:@"FirstTab.png"] forSegmentAtIndex:0];
    [iSeg setImage:[UIImage imageNamed:@"SecondTabActive.png"] forSegmentAtIndex:1];
}   
}

【问题讨论】:

    标签: iphone objective-c ios4 background-image uisegmentedcontrol


    【解决方案1】:

    我不确定我是否完全理解您的需求,但您能否使用 UILabel(位于图片上方)。然后,您可以使用 myLabel.text 和 myLabel.textColor 轻松更改颜色和文本。

    希望这在某种程度上有所帮助!

    【讨论】:

    • @Job W 09:我已经尝试使用 UILabel 将文本添加为​​子视图,但它位于图像下方...
    猜你喜欢
    • 2013-07-29
    • 1970-01-01
    • 2018-08-01
    • 2018-03-16
    • 2015-11-06
    • 2012-04-09
    • 2011-06-01
    • 2017-01-14
    • 2013-12-16
    相关资源
    最近更新 更多