我是iPhone开发的新手。我创建了UISegmentedControl有2个段。我想显示每个段而不是标题的图像。这是我的代码
NSArray *itemArray = [NSArray arrayWithObjects: @"segment1", @"segment2", nil];
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:itemArray];
segmentedControl.frame = CGRectMake(5,100,300,40);
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.selectedSegmentIndex = 1;
[self.view addSubview:segmentedControl];
[segmentedControl release];
但是不应该显示标题,segment1和segment2,而应该用我拥有的图像替换它。
答案 0 :(得分:26)
这几乎就是你所拥有的,只需传递一组UIImages而不是NSStrings。
NSArray *itemArray = [NSArray arrayWithObjects:
[UIImage imageNamed:@"segment1.png"],
[UIImage imageNamed:@"segment2.png"],
nil];
答案 1 :(得分:22)
如果要在运行时更改图像,请使用以下方法:
- (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment
e.g:
[segmentedControl setImage:[UIImage imageNamed:@"segment1.png"] forSegmentAtIndex:0];
答案 2 :(得分:12)
使用 Interface Builder (属性检查器标签)进行操作非常简单。
此外,您可以使用图像设置一个片段,使用文本设置另一个片段。
快乐的xCoding! )
答案 3 :(得分:4)
答案 4 :(得分:1)
在xcode 4.6.3中,界面构建器中有一个选项可以将图像添加到段控件中。