UIToolbar 工具条

2016-07-20  本文已影响663人  nalis风

UIToolbar 继承UIView 多个UIBarButtonItem的容器

barStyle:

UIBarStyleDefault.

UIBarStyleBlack 黑背景,白字风格

UIbarStyleBlackOpaque(黑色不透明背景,白字风格)

UIBarStyleBlackTranslucent(黑色透明背景,白色风格)

Fixed Space Bar Button Item 工具条上固定宽度的空白间隔 对象是UIBarButtomItem 的实例

BarButtomIterm 工具条上的按钮

Flexible Space Bar Buttom Item 工具条上可伸缩宽度的空白间隔  亦为实例 默认会“努力占据” 更多的宽度,因此,如果在最后一个按钮钱插入FLexibleSpaceBarButtonItem 即可把最后一个按钮“挤到”工具条的最右边

提示:

如果程序需要将工具条上的按钮放置在工具条中间,可以选择在该按钮的左右两边各放置一个FlexibleSpacebarButtonItem

UIToolBar几乎可以放置任何空间,只要将其包装为UIBarButtonItem即可

-initWithTitle:style:target:action: 初始化包装一个普通按钮的UIBarbuttonItem

-initWithImage:style:target:action: 初始化包装为UIImageView的UIBarbuttonItem

-initWithBarBUttonSystemItem:target:action 初始化包装系统按钮的...这个系统按钮的图标、风格都是固定的。该方法需要一个UIBarButtonSystemItem类型的枚举值

-initWithCustomView: 初始化包装任意UI控件的... 需要传入一个UIView参数

- (void)viewDidLoad {

[super viewDidLoad];

self.toolbar=[[UIToolbar alloc]initWithFrame:CGRectMake(0, 40, 540, 50)];

self.toolbar.barStyle=UIBarStyleBlack;

[self.view addSubview:self.toolbar];

UIBarButtonItem* bn1=[[UIBarButtonItem alloc]

initWithTitle:@"OK" style:UIBarButtonItemStylePlain target:self action:@selector(clicked:)];

//创建使用自定义图片的UIBarButtonItem

UIBarButtonItem* bn2=[[UIBarButtonItem alloc]

initWithImage:[UIImage imageNamed:@"heart.gif"] style:UIBarButtonItemStyleBordered target:self action:@selector(clicked:)];

//创建使用系统图标的UIBBI

UIBarButtonItem* bn3=[[UIBarButtonItem alloc]

initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(clicked:)];

//可伸缩

UIBarButtonItem* flexItem=[[UIBarButtonItem alloc]

initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];

//

self.prog=[[UIProgressView alloc]

initWithProgressViewStyle:UIProgressViewStyleBar];

self.prog.frame=CGRectMake(0, 0, 80, 20);

//设置改进度条的初始进度为0

self.prog.progress=0;

//创建使用UIView的UIBBI

UIBarButtonItem* bn4=[[UIBarButtonItem alloc]

initWithCustomView:self.prog];

self.toolbar.items=[NSArray arrayWithObjects:bn1,bn2,bn3,bn4, nil];

_timer=[NSTimer scheduledTimerWithTimeInterval:0.2 target:self selector:@selector(changeProgress) userInfo:nil repeats:YES];

[_timer fire];

// Do any additional setup after loading the view, typically from a nib.

}

-(void)clicked:(id)sender{

UIAlertController* alertController=[UIAlertController alertControllerWithTitle:@"您的选择" message:[NSString stringWithFormat:@"%@",sender] preferredStyle:UIAlertControllerStyleAlert];

UIAlertAction* defaultAction=[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {

}];//一个UIAlertAction是一个按钮 和其事件

[alertController addAction:defaultAction];

[self presentViewController:alertController animated:YES completion:nil];

}

-(void)changeProgress

{

//如果进度满,则停止计时器

if (self.prog.progress>=1.0) {

[self.prog setProgress:0.0 animated:YES];

}

else

{

[self.prog setProgress:self.prog.progress+0.1

animated:YES];

}

}

上一篇下一篇

猜你喜欢

热点阅读