【发布时间】:2011-10-28 09:11:28
【问题描述】:
我有以下代码,它在 iOS 4 中会产生“已禁用”的 UISegmentedControl 的外观。细心的读者会注意到,我正在使用 MonoTouch 进行开发,因此使用的是 c# 语法。
private void MakeOverlayOnLastRatingSegment()
{
RemoveOverlayOnLastRatingSegment();
lastRatingDisabledLayer = new CALayer();
lastRatingDisabledLayer.Frame = new RectangleF(new PointF(0, 0), segmLastRating.Frame.Size);
lastRatingDisabledLayer.CornerRadius = 10.0f;
lastRatingDisabledLayer.BackgroundColor = UIColor.FromRGBA(0.5f, 0.5f, 0.5f, 0.2f).CGColor;
segmLastRating.Layer.AddSublayer(lastRatingDisabledLayer);
}
结果是:
但在 iOS5 上,结果有点不同。所选单元格之前的段写在我的灰色层之上。它需要仔细观察 - 在真实设备而不是模拟器上更明显。出于某种原因,模拟器的屏幕转储非常轻。
有没有其他人遇到过这种情况,有人有解决方法吗?
最好的问候 /安德斯
【问题讨论】:
-
你有答案了吗?我面临同样的问题?
-
可悲的是,我的解决方案变成了“接受它”。这是一个非常小的能见度痒。我的结论是,几乎没有用户会观察到它,甚至更少的用户会觉得它很烦人,而且绝对没有人会因为这个产品而批评该产品。所以我们接受它 - 但如果你确实找到了解决方案,请发布它。
标签: c# uikit xamarin.ios ios5 calayer