Iphone UISegmentedControl中的字母似乎变差了

Iphone UISegmentedControl中的字母似乎变差了,iphone,xcode4,ios5,Iphone,Xcode4,Ios5,考虑上面的屏幕截图 最上面的一个是在程序启动时生成的,初始alpha属性在IB中设置为0.86。中间的一个是相同的UISegmentedControl,其alpha属性在运行时通过以下消息调用设置为相同的值 [segmented_control setAlpha : 0.86]; 最低的是运行时设置为1.00的同一控件,如下所示 [segmented_control setAlpha : 1.00]; < StAlg+调用仅在1有效,因为中间屏幕截图中的字母在任何小于1的值上都会恶化。 我的

考虑上面的屏幕截图

最上面的一个是在程序启动时生成的,初始alpha属性在IB中设置为0.86。中间的一个是相同的UISegmentedControl,其alpha属性在运行时通过以下消息调用设置为相同的值

[segmented_control setAlpha : 0.86];
最低的是运行时设置为1.00的同一控件,如下所示

[segmented_control setAlpha : 1.00];
< StAlg+调用仅在1有效,因为中间屏幕截图中的字母在任何小于1的值上都会恶化。

我的问题是,有没有办法将控件的alpha属性设置为小于1,同时保持其显示质量


尝试使用“setOpaque”、“setHidden”调用切换,并将alpha值更改为其他数字,但问题仍然存在。因为它可以在IB中完成(如上图所示),所以我想它也可以在代码中完成。希望有人能给我一些提示…

尝试操作控件CALayer的不透明属性

theControl.layer.opacity = 0.86;

谢谢你的评论。您已经尝试过.opacity=0.86语句,但不幸的是它不起作用。结果与上面的第二个屏幕截图相同。在.opacity语句之后还尝试了一个“setNeedsDisplay”调用,结果是一样的。@Stanley:不客气。我想帮你解决你的问题。