UILabel有没有办法在自己周围划出边界?这对我调试文本位置以及查看位置和标签实际大小非常有用.
在我的应用程序中 - 有四个按钮,命名如下:
按钮上方有一个图像视图(或UIView).
现在,假设用户点击 - 左上角按钮.上面的图像/视图应该在该特定角落四舍五入.
我在为UIView应用圆角方面遇到了一些困难.
现在我使用以下代码将圆角应用于每个视图:
// imgVUserImg is a image view on IB.
imgVUserImg.image=[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"any Url Here"];
CALayer *l = [imgVUserImg layer];
[l setMasksToBounds:YES];
[l setCornerRadius:5.0];
[l setBorderWidth:2.0];
[l setBorderColor:[[UIColor darkGrayColor] CGColor]];
Run Code Online (Sandbox Code Playgroud)
上面的代码将圆度应用于所提供视图的每个角.相反,我只想将圆度应用于选定的角落,如 - 顶部/顶部+左侧/底部+右侧等.
可能吗?怎么样?
我需要确定选定的UIColor(由用户选择)是暗还是亮,因此我可以更改位于该颜色顶部的文本行的颜色,以提高可读性.
这是Flash/Actionscript中的一个示例(带演示):http://web.archive.org/web/20100102024448/http://theflashblog.com/?p = 173
有什么想法吗?
干杯,安德烈
UPDATE
感谢大家的建议,这是工作代码:
- (void) updateColor:(UIColor *) newColor
{
const CGFloat *componentColors = CGColorGetComponents(newColor.CGColor);
CGFloat colorBrightness = ((componentColors[0] * 299) + (componentColors[1] * 587) + (componentColors[2] * 114)) / 1000;
if (colorBrightness < 0.5)
{
NSLog(@"my color is dark");
}
else
{
NSLog(@"my color is light");
}
}
Run Code Online (Sandbox Code Playgroud)
再次感谢 :)
如果使用视图中的代码添加视图的边框
self.layer.borderColor = [UIColor yellowColor].CGColor;
self.layer.borderWidth = 2.0f;
Run Code Online (Sandbox Code Playgroud)
边框添加到视图内部,如下所示:

右视图是原始视图,如您所见,边界视图的黑色区域小于原始视图.但我想得到的是原始视图之外的边框,如下所示:
.黑色区域等于原始区域,我该如何实现呢?
我已经查看了Xcode 6.3中标签的属性,但我还没有找到如何围绕边缘,就像你可以绕文本字段的边缘一样.
我创建了一个文档视图,显示了角落里的页码.页码是具有半透明背景颜色的uilabel,并且具有角半径(使用s 的cornerRadius属性).我把它放在了上面.但是,这会使滚动生涩.如果我删除,性能是好的.我能做些什么吗?什么是更好的解决方案?它似乎是在没有任何性能问题的情况下实现的.viewlayerUIScrollViewcornerRadiusUIWebView
许多应用程序在运行耗时的操作时会弹出带圆角的透明视图和activityIndicator.
这个舍入是如何完成的,是否可以使用Interface Builder来实现(因为有很多地方我想使用这样的东西)?或者,我应该使用带有圆形rect或可伸缩图像的imageview吗?我需要自己画背景吗?
到目前为止,我已经设法通过在Interface Builder中设置alphaValue来获得具有相似透明度的基本视图,但它没有圆角,并且透明度似乎也适用于所有子视图(我不想要text和activityindicator透明,但即使我在IB中设置alphaValue似乎也被忽略了).
如何设置按钮的自定义背景颜色?
Interface Builder似乎没有用于执行此操作的界面.
它只能以编程方式提供吗?如果是的话,你能提供一个例子吗?
我在视图中使用了一些标签.我想在我的iphone应用程序中制作圆角标签.我使用以下代码来执行此操作,但它不起作用.我有一些错误使用该属性.
label.layer.borderColor = [UIColor blueColor].CGColor;
label.layer.borderWidth = 4.0;
label.layer.cornerRadius = 8;
Run Code Online (Sandbox Code Playgroud) 我刚收到很多关于制作叠加视图问题的好回复. 有没有办法在iPhone SDK上制作叠加视图?
我的另一个问题是如何使覆盖视图具有圆形边缘,如Skype iPhone应用程序或Phone.app.
谢谢.
我的UILabel怎么能像TableView的UITableViewStyleGrouped一样?