带圆角的UIToolbar

时间:2010-07-06 03:28:14

标签: iphone uitoolbar

我想在顶部显示带圆角的UIToolbar,最简单的方法是什么?工具栏在窗口上没有顶部对齐;它有一个边缘。谢谢!

2 个答案:

答案 0 :(得分:16)

很简单。

首先 - 在视图控制器的.h文件中有一个UIToolbar的IBOutlet变量。 例如。

@interface TextFormattedViewController : UIViewController {
     IBOutlet UIToolbar *tBar;
}

现在,在您的视图控制器文件的.m文件中,只需放置以下代码&它将成为你的魔力。但是 - 如果有任何疑问,请添加评论。

#import "TextFormattedViewController.h"
#import <QuartzCore/QuartzCore.h>
@implementation TextFormattedViewController
- (void)viewDidLoad {
    // following statement is must.
    tBar.clipsToBounds=YES;
    CALayer *l=tBar.layer;
    // set corner radious
    [l setCornerRadius:10];
    // to apply border on corners
    [l setBorderColor:[[UIColor redColor] CGColor]];
    // to apply set border width.
    [l setBorderWidth:5.0];
}

答案 1 :(得分:3)

绕视图边角的最简单方法是使用cornerRadius(和masksToBounds)属性CALayer。但是,您只能选择将所有角落均匀地舍入。要使用该属性,可以将UIToolbar放入另一个高于工具栏的视图中,因此只有顶部被舍入。如果另一个视图将具有圆角底部,这将很有效。

将视图屏蔽为任意形状的最简单方法是将mask CALayer属性设置为新CAShapeLayer。在您的情况下,使用CGPathCAShapeLayer或类似内容为CGPathAddLineToPoint构建CGPathAddArcToPoint以仅获得四舍五入的顶角。

相关问题