iOS开发UINavigation系列三——工具栏UIToolBar

iOS开发UINavigation系列三——工具栏UIToolBar

        iOS中除了UINavinationBar之外,还有工具栏UIToolBar可以供我们使用,工具栏和导航栏十分类似,只是功能更加简单,工具栏中也有UIBarButtonItem按钮,在前两篇博客中,对导航栏和导航项都进行的讨论,地址如下:

UINavigationBar:http://my.oschina.net/u/2340880/blog/527706

UINavigationItem:http://my.oschina.net/u/2340880/blog/527781

        导航栏一般会出现在视图的头部,与之相对,工具栏一般会出现在视图的的底部,上面可以填充一些按钮,提供给用户一些操作。创建一个工具栏如下:

?


1

2

3

    self.view.backgroundColor = [UIColor grayColor];

    UIToolbar * tool = [[UIToolbar alloc]initWithFrame:CGRectMake(0, self.view.frame.size.height-40, 320, 40)];

    [self.view addSubview:tool];

下面是UIToolBar中的一些方法,其中大部分在UINavigationBar中都有涉及,这里只做简单的介绍:

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

//工具栏的风格,和导航栏类似,有黑白两种

@property(nonatomic) UIBarStyle barStyle; 

//设置工具栏上按钮数组

@property(nullable,nonatomic,copy) NSArray<UIBarButtonItem *> *items; 

//设置工具栏是否透明

@property(nonatomic,assign,getter=isTranslucent) BOOL translucent; 

//设置工具栏按钮

- (void)setItems:(nullable NSArray<UIBarButtonItem *> *)items animated:(BOOL)animated; 

//设置item风格颜色

@property(null_resettable, nonatomic,strong) UIColor *tintColor;

//设置工具栏背景色

@property(nullable, nonatomic,strong) UIColor *barTintColor;

//设置工具栏背景和阴影图案

- (void)setBackgroundImage:(nullable UIImage *)backgroundImage forToolbarPosition:(UIBarPosition)topOrBottom barMetrics:(UIBarMetrics)barMetrics;

- (nullable UIImage *)backgroundImageForToolbarPosition:(UIBarPosition)topOrBottom barMetrics:(UIBarMetrics)barMetrics;

- (void)setShadowImage:(nullable UIImage *)shadowImage forToolbarPosition:(UIBarPosition)topOrBottom;

- (nullable UIImage *)shadowImageForToolbarPosition:(UIBarPosition)topOrBottom;

时间: 2024-11-13 06:53:01

iOS开发UINavigation系列三——工具栏UIToolBar的相关文章

iOS开发UINavigation系列四——导航控制器UINavigationController

iOS开发UINavigation系列四--导航控制器UINavigationController 一.引言         在前面的博客中,我么你介绍了UINavigationBar,UINavigationItem和UIToolBar,UINavigationController是将这些控件和UIViewController紧密的结合了起来,使用导航,我们的应用程序层次会更加分明,对controller的管理也更加方便.前几篇博客地址如下: UINavigationBar:http://my

iOS开发UINavigation系列二——UINavigationItem

iOS开发UINavigation系列二--UINavigationItem 一.引言         UINavigationItem是导航栏上用于管理导航项的类,在上一篇博客中,我们知道导航栏是通过push与pop的堆栈操作来对item进行管理的,同样,每一个Item自身也有许多属性可供我们进行自定制.这篇博客,主要讨论UINavigationItem的使用方法. UINavigationBar:http://my.oschina.net/u/2340880/blog/527706. 二.来

iOS开发UINavigation系列一——导航栏UINavigtionBar

iOS开发UINavigation系列一--导航栏UINavigtionBar 一.导航栏的使用         在iOS开发中,我们通常会使用导航控制器,导航控制器中封装了一个UINavigationBar,实际上,我们也可以在不使用导航控制器的前提下,单独使用导航栏,在UINavigationBar中,也有许多我们可以定制的属性,用起来十分方便. 二.UINavigationBar的创建和风格类型         导航栏继承于UIView,所以我们可以像创建普通视图那样创建导航栏,比如我们创

iOS流布局UICollectionView系列三——使用FlowLayout进行更灵活布局

iOS流布局UICollectionView系列三--使用FlowLayout进行更灵活布局 一.引言         前面的博客介绍了UICollectionView的相关方法和其协议中的方法,但对布局的管理类UICollectionViewFlowLayout没有着重探讨,这篇博客介绍关于布局的相关设置和属性方法. UICollectionView的简单使用:http://my.oschina.net/u/2340880/blog/522613    UICollectionView相关协议

iOS开发定时器的三种方法分享_IOS

前言 在开发中,很多时候我们需要用到定时器实时刷新某个数值.这个时候我们就需要用到定时器,这里,我为大家推荐三种方法,分别是:NSTimer.CADisplayLink.GCD.接下来我就一一介绍它们的用法.希望能帮到大家. 一.NSTimer(一般用于定时的更新一些非界面上的数据) 1. 创建方法 NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(action:

【Swift 2.2】iOS开发笔记(三)

1.UITableView 中调用 UIButton 的 setTitle 会闪 滚动列表时比较明显,解决办法: buttonType 改成 custom 即可,但是这样一来 UIButton 的高亮效果也没了,但可以自己手动配置 State Config  2.监听 UITextField 文本改变 func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementSt

iOS开发之微信聊天工具栏的封装_IOS

微信大家基本上都用过,今天要做的就是微信的聊天工具条.聊天工具条还是比较复杂的,其中包括发送表情,发送文字,发送图片,发送声音,拍照等等功能,下面给出发送录音,文字,表情的代码,其他的和这几样类似.还是那句话百字不如一图,先来几张效果图吧. 在封装聊天工具条的的时候表情键盘是之前封装好的,所以拿过来就可以用的啦.因为不管是工具条还是表情键盘都是用约束来控件大小的,所以横屏也是没问题的,在大屏手机上也是没问题的.下面将会一步步讲解如何封装下面的聊天工具条.主要是对工具条的封装,表情键盘在这就不做讲

iOS开发之微信聊天工具栏的封装

之前山寨了一个新浪微博(iOS开发之山寨版新浪微博小结),这几天就山寨个微信吧.之前已经把微信的视图结构简单的拖了一下(IOS开发之微信山寨版),今天就开始给微信加上具体的实现功能,那么就先从微信的聊天界面开始吧.提到封装是少不了写代码的,在封装组件的时候,为了组件的可移植性,我们就不能用storyboard来拖拽了.为了屏幕的适配,适应不同屏幕的手机,所以在封装组件的时候是少不了为我们的组件来添加约束.今天博客中的所有代码都是脱离storyboard的,这些代码在别的工程中也是可以使用的.好,

ios开发-怎么用三个slider控制同页面的label的背景颜色

问题描述 怎么用三个slider控制同页面的label的背景颜色 用滚动条可以实时改变label的背景色..假设三个slider,一个控制红色,一个控制绿色,一个控制蓝色 解决方案 (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. UILabel *redLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 3