Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/103.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS:如何在不使用“iSegmentControl”的情况下禁用UISegmentControl;dimm";-效果如何?_Ios - Fatal编程技术网

iOS:如何在不使用“iSegmentControl”的情况下禁用UISegmentControl;dimm";-效果如何?

iOS:如何在不使用“iSegmentControl”的情况下禁用UISegmentControl;dimm";-效果如何?,ios,Ios,我尝试将UISegmentControl集成到我的应用程序中,它应该只显示当前状态。这意味着我不希望分段控件是可触摸的 我试过: passwdStrength = (UISegmentedControl *)[cell viewWithTag:99]; tintcolor = [UIColor colorWithRed:255.0/255.0 green:0.0/255.0 blue:0.0/255.0 alpha:1.0]; [passwdStrength setTintColor:tintc

我尝试将UISegmentControl集成到我的应用程序中,它应该只显示当前状态。这意味着我不希望分段控件是可触摸的

我试过:

passwdStrength = (UISegmentedControl *)[cell viewWithTag:99];
tintcolor = [UIColor colorWithRed:255.0/255.0 green:0.0/255.0 blue:0.0/255.0 alpha:1.0];
[passwdStrength setTintColor:tintcolor];
[passwdStrength setTitle:lang(@"PW_STRENGTH_WEAK") forSegmentAtIndex:0];
[passwdStrength setTitle:lang(@"PW_STRENGTH_MEDIUM") forSegmentAtIndex:1];
[passwdStrength setTitle:lang(@"PW_STRENGTH_STRONG") forSegmentAtIndex:2];
passwdStrength.enabled = NO;
passwdStrength.alpha = 1.0f;
分段控件不再可触摸,但颜色(在红色、黄色和绿色之间切换)变暗。我搜索了一个答案,找到了一个信息,当片段被禁用时,它的alpha值被设置为0.5f。因此,我尝试手动将alpha值设置为1,但不起作用


有人知道如何在不使元素颜色变暗的情况下禁用触摸式UISegmentControl吗?

解决方案不是禁用
UISegmentedControl
,而是禁用其上的用户交互。这样,就不会应用“dimm”效果,用户也无法单击控件

如果您使用的是interface builder(xib/storyboard),请选择您的
UISegmentedControl
,下面是配置的外观:

如果要按代码执行此操作:

passwdStrength.enabled = YES;
passwdStrength.userInteractionEnabled = NO;

解决方案不是禁用
UISegmentedControl
,而是禁用其上的用户交互。这样,就不会应用“dimm”效果,用户也无法单击控件

如果您使用的是interface builder(xib/storyboard),请选择您的
UISegmentedControl
,下面是配置的外观:

如果要按代码执行此操作:

passwdStrength.enabled = YES;
passwdStrength.userInteractionEnabled = NO;

UISegmentedControlUIControl的子类,而UIControl又是UIView的子类,因此您可以将控件的userInteractionEnabled属性设置为等于NO。这将防止触及分段控件。

UIControl的子类,而UIControl又是UIView的子类,因此您可以将控件的userInteractionEnabled属性设置为等于NO。这将防止触及分段控件