iOS系统自带控件 UIBarButtonSystemItem

2018-06-19  本文已影响65人  xiaofu666

UIBarButtonSystemItem的样式解析

样式 图片
UIBarButtonSystemItemDone Done
UIBarButtonSystemItemCancel Cancel
UIBarButtonSystemItemEdit Edit
UIBarButtonSystemItemSave Save
UIBarButtonSystemItemAdd Add
UIBarButtonSystemItemFlexibleSpace 无样式
UIBarButtonSystemItemFixedSpace 无样式
UIBarButtonSystemItemCompose Compose
UIBarButtonSystemItemReply Reply
UIBarButtonSystemItemAction Action
UIBarButtonSystemItemOrganize Organize
UIBarButtonSystemItemBookmarks Bookmarks
UIBarButtonSystemItemSearch Search
UIBarButtonSystemItemRefresh Refresh
UIBarButtonSystemItemStop Stop
UIBarButtonSystemItemCamera Camera
UIBarButtonSystemItemTrash Trash
UIBarButtonSystemItemPlay Play
UIBarButtonSystemItemPause Pause
UIBarButtonSystemItemRewind Rewind
UIBarButtonSystemItemFastForward Forward
UIBarButtonSystemItemUndo Undo
UIBarButtonSystemItemRedo Redo
UIBarButtonSystemItemPageCurl Curl

其中UIBarButtonSystemItemFlexibleSpaceUIBarButtonSystemItemFixedSpace两个是无样式的, 他们不是按钮,而是调整按钮间距用的对象.

举个例子:
让4个按钮等间距地分布在工具条中,在使用UIViewController的setToolbarItems:方法 追加按钮时,如下述代码一样在4个按钮之间追加IBarButtonSys
temItemFlexibleSpace对象即可。

例如下图:

toolBar

首先创建方法

-  (UIBarButtonItem*)barButtonSystemItem :(UIBarButtonSystemItem) systemItem {  
    UIBarButtonItem* button = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:systemItem target:nil action:nil]; 
    return button;  
} 

调用

- (UIToolbar *)addToolbar
{
    UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, CGRectGetWidth(self.view.frame), 45)];
    toolbar.tintColor = [UIColor blueColor];
    toolbar.backgroundColor = [UIColor grayColor];
    toolbar.items = [NSArray arrayWithObjects:
                           [self barButtonSystemItem:UIBarButtonSystemItemAction],
                           [self barButtonSystemItem:UIBarButtonSystemItemFlexibleSpace],
                           [self barButtonSystemItem:UIBarButtonSystemItemBookmarks],
                           [self barButtonSystemItem:UIBarButtonSystemItemFlexibleSpace],
                           [self barButtonSystemItem:UIBarButtonSystemItemReply],
                           [self barButtonSystemItem:UIBarButtonSystemItemFlexibleSpace],
                           [self barButtonSystemItem:UIBarButtonSystemItemCompose],nil];
    return toolbar;
}

在调用的过程中,使用 UIBarButtonSystemItemFlexibleSpace去占位,达到实现规范化的目的

实现效果:

toolBar

相应的 UIBarButtonSystemItemFixedSpace则是使特定位置控件替代.

UIBarButtonSystemItemFixedSpace
上一篇 下一篇

猜你喜欢

热点阅读