iOS SDK详解之UIToolBar

原创blog,转载请注明出处
http://blog.csdn.net/hello_hwc?viewmode=contents
欢迎关注我的iOS SDK详解专栏
http://blog.csdn.net/column/details/huangwenchen-ios-sdk.html


前言:ToolBar是一个常用的UIKit控件,常用来放置评论,收藏,分享等功能。本文模仿今日头条 App的文章部分的Toolbar


Demo效果

Demo 采用代理的方式传递点击事件,感兴趣的同学可以下载下来看看。可以根据需求进行订制化的修改。
链接
http://download.csdn.net/detail/hello_hwc/9023787


ToolBar的属性/方法

barStyle //bar 风格

分为两种

 UIBarStyleDefault          = 0,
 UIBarStyleBlack            = 1,

setBackgroundImage:forToolbarPosition:barMetrics: //背景图片
- setShadowImage:forToolbarPosition://阴影图片
items//UIBarbuttonItems的数组,定义toolbar的图标

UIBarbuttonItem

具体的API就不讲了,BarbuttonItem主要分为四种

  • 系统图标
    initWithBarButtonSystemItem:target:action:

  • 图片
    initWithImage:style:target:action:

  • 文字
    initWithTitle:style:target:action:

  • 自定义视图
    initWithCustomView:


另外还要提到两种特殊的item,作为分隔符使用的

  • UIBarButtonSystemItemFlexibleSpace //会自动调整宽度
  • UIBarButtonSystemItemFixedSpace //固定宽度

举个简单的例子

这里写图片描述

代码

UIBarButtonItem * item1 = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:nil];
    UIBarButtonItem * fixedItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
    fixedItem.width = 20;

    UIBarButtonItem * item2 = [[UIBarButtonItem alloc] initWithTitle:@"文字" style:UIBarButtonItemStylePlain target:nil action:nil];
    UIBarButtonItem * flexItem =  [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace  target:nil action:nil];

    UIBarButtonItem * item3 = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"toobarDone"] style:UIBarButtonItemStylePlain target:nil action:nil];
    self.toolBar.items = @[item1,fixedItem,item2,flexItem,item3];

简单讲解下Demo工程

  • 评论的角标是采用runtime的机制,所以要调用set方法。
  • 用代理+tag的方式来传递事件
  • 仍然有些不完善的地方,不过不会再改了

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值