位置: 编程技术 - 正文

Android ToolBar 的简单封装

编辑:rootadmin

推荐整理分享Android ToolBar 的简单封装,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

使用过 ToolBar 的朋友肯定对其使用方法不陌生,因为其用法很简单,如果对 ActionBar 使用比较熟练的人来说,ToolBar 就更容易了!不过,相信大家在使用的过程中都遇到过这样一个问题,需要在每一个我们要使用的 xml 中添加 ToolBar 这个控件,比如我需要在 MainActivity中使用 ToolBar,则他的 xml 文件需要这样写,

同理其他 Activity 中需要用页都需要在 xml添加

这样一段代码,虽然不多,但是我们最烦的就是写重复代码,也不符合我们的编程思想;所以就有了以下写法

toolbar.xml的代码如下

这样我们只需要在每个我们要使用 toolbar 的 xml 中通过 include 嵌入 toolbar.xml布局就行,感觉和之前的比,确实是少了几行代码!但是意义不大。而我这里要实现的封装,是可以不需要在 xml 中写一行关于 toolbar 的代码,也就是跟平时不用 toolbar 一样的写法即可!请接着往下看。 前提是准备好toolbar.xml,ToolBarActivity.java,ToolBarHelper.java toolbar.xml中配置 toolbar 的基本属性: toolbar 的宽高,toolbar 的背景颜色等其他样式 ToolBarActivity.java是所以需要使用 toolbar Activity 的父类,这里我把他定义为抽象类,因为单独的这个类不能完成任何功能 ToolBarHelper.java 是 Activity 和 toolbar 的关联类

先来看 toolbar.xml的代码

ToolBarActivity.java的内容:主要代码是在setContentView(int id) 实现

Android ToolBar 的简单封装

ToolBarHelper.java 这个类的功能是:先创建一个 ViewGroup 来作为视图的父 View,把用户定义的 View,和 toolBar 依次 Add 到 ViewGroup 中;

到这里,toolbar 的简单封装就算完成了,一起来看看封装之后的效果吧

MainActivity.java

activity_main.xml

到这里我们不管是 MainActivity 还是 activity_main中都没有出现 ToolBar,只是 MainActivity 不再继承 AppCompatActivity,而是继承我们 ToolBarActivity,运行效果看看:

ToolBar 的其他用法这里就不讲了,跟 ActionBar 用法几乎一样,

最后: 在使用 ToolBar 的时候,需要使用无 ActionBar 的主题,

再上一张自定义 View 的 ToolBar 效果图: 标题居中,右侧可以添加按钮

源码下载

Gradle代码混淆文件个人收藏版 一般来说可以通用,放进proguard-rules.pro文件即可,混淆之后的APP运行检验一下,哪个类运行错误就把那个类Keep.最后不要忘了在build.gradle中release{//minifyEn

Android 使用Fiddler对应用进行抓包(一) Fiddler是一款免费且功能强大的数据包抓取软件。它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户

Android listview的适配器以及各种监听、效率的提升 之前写过一篇关于listview的博客,现在感觉那篇博客关于listview认识不够全面。但有些方法还是可取,例如灵活的监听,写适配器。链接在这里androidlistvi

标签: Android ToolBar 的简单封装

本文链接地址:https://www.jiuchutong.com/biancheng/387484.html 转载请保留说明!

上一篇:Android天气预报小项目的一些总结(android天气预报课程设计报告)

下一篇:Gradle代码混淆文件个人收藏版(gradle 混淆)

  • 印花税申报表计税依据怎么填
  • 增值税专用发票可以开电子发票吗
  • 疫情期间生活服务业免征增值税截止时间
  • 无票收入在增值税表中填哪
  • 人力资源行业税务政策
  • 服务费发票税率1%
  • 出口货物退货需要退税吗
  • 会计软件每年都要付钱的吗
  • 慈善捐款抵税的会计分录
  • 公租房租金收入什么科目
  • 税收编码选错了,发票已经开出去几个月了,还有影响吗
  • 买二手车年限久的会怎样
  • 季度不超9万
  • 个体工商户如何给员工交社保
  • 开票码必须输入吗
  • 票据贴现手续费发票可以抵扣吗
  • 生活服务业加计扣除15%最新政策2019
  • 新公司没有实收资本,他的钱从哪来
  • 小规模纳税人不开票收入填在哪里
  • 企业利润表中营业收入在资产负债表中有勾千盾关系吗
  • 自建房房产税计税依据及计算方式
  • 新公司会计建账流程
  • ie增强的安全配置已启用上不了网
  • 我公司对某公司作如下措施
  • 无生产怎样结转成本费用
  • 外购商品可以直接结转成本吗
  • win10双系统修改名称
  • php怎么上传多个图片
  • win7系统中怎样没有智能卡这一选项
  • 报销费用多付会计分录
  • 爱沙尼亚的故事
  • 高新企业政府补贴政策
  • php循环语句
  • 贷款核销对个人的影响
  • 最小巧的单反相机
  • 收回贷款本息是包含本金吗
  • 辞退员工补偿标准是n+1还是2n
  • 国税一证通
  • 按适用税率计税销售额与应税货物销售额不一致
  • vue开发环境和生产环境域名配置
  • 谁能代替你啊
  • js中数组方法有哪些
  • 学会这两种方式英语
  • 计算机专业的毕业设计作品新颖
  • PHP 实现等比压缩图片尺寸和大小实例代码
  • 员工报销凭证怎么做
  • 企业办理土地证需要哪些资料和手续
  • 支付股息如何做账
  • 实收资本不能动吗
  • 财务负责人需要工商登记吗
  • 养猪死亡
  • 应付账款多好还是少好
  • 小规模应交增值税怎么算出来的
  • 被收购企业账务处理流程
  • 融资租赁可以折旧吗
  • 公司基本户可以取现金吗
  • 全国县市区最多的省
  • win8安装虚拟机的步骤
  • freebsd怎么用
  • 教程图解
  • linux常用命令 删除
  • ubuntu系统服务器
  • dl是什么文件
  • win1020h2正式版
  • win10系统运行速度慢
  • xp系统设置局域网
  • centos7如何进入命令行
  • 优质电子书app
  • 微信小程序实现微信支付
  • shell脚本监控日志输出
  • javaScript事件机制兼容【详细整理】
  • 用python编写程序
  • 批处理应用实例
  • js prev()
  • javascript含义
  • python怎么写字符串
  • error: Error parsing XML: unbound prefix
  • android界面设计规范
  • 欠款抵押房产可以直接过户吗
  • 佛山顺德人才房申请条件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设