• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android Support Library 之 Toolbar

Android Support Library 之 Toolbar

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android toolbar,android自定义toolbar,android toolbar控件,android toolbar menu,android toolbar 返回等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android Support Library 之 Toolbar


在 Android 3.0 开始 ,所有的主题默认把 ActionBar 作为默认的 App Bar,但是它很死板,不容易自行设计想要的风格, 在 v7 兼容库中,出现了 Toolbar, 它改善了这个问题,伴随着 Toolbar 取代 传统的 ActionBar ,ActionBar 上的功能要怎么在 ToolBar 上实现,需要我们去探讨下 。 </div>

如何添加Toolbar

1、我们使用的是 v7 兼容库,所以 Activity 要继承自 AppCompatActivity</div>
MainActivity extends AppCompatActivity

</div> 2、修改主题 ,去掉默认的 ActionBar,v7 兼容库给我们提供了一个默认的没有 ActionBar 的主题</div> </div> </div> 例如</div>
    
 
    


</div> </div> </div> 3、在布局中添加 Toolbar</div>
</div> </div> </div> 4、在代码中把 Toolbar 设置为 App Bar ,并设置它的 Navigation Icon, Logo,Title,SubTitle</div> Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar.setNavigationIcon(R.mipmap.ic_action_back); toolbar.setLogo(R.mipmap.ic_launcher); toolbar.setTitle("Toolbar"); toolbar.setSubtitle("Toolbar SubTitle"); setSupportActionBar(toolbar);
</div> </div> 看下效果</div> </div> 可是标题的颜色和 overflow 的颜色并不统一,全改为白色或许可以</div> false true @android:color/white @android:color/white

</div> 再看下效果</div> </div> </div> </div> 还可以吧~</div> </div> </div>

如何使用Toolbar

一旦我们设置了 ToolBar 作为了App Bar,那么就可以使用 v7 兼容包中的 ActionBar 类的方法</div> 例如</div> private void setupActionbar() { android.support.v7.app.ActionBar actionBar = getSupportActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); actionBar.hide(); }</div> 我们在操作ActionBar的时候,也就相当于在操作Toolbar,因此在 Acionbar 上设置 title,Logo 都会覆盖 toolbar 上的显示</div>

在 Toolbar 上增加 action menu 中的 options menu (>=3.0)

</div> 定义menu 菜单</div> </div> 显示menu</div> @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main_menu, menu); return true; }</div> 响应menu事件</div> @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.favorite: Toast.makeText(this, "Favorite", Toast.LENGTH_SHORT).show(); return true; } return super.onOptionsItemSelected(item); }
</div>

在 Toolbar 中增加 action menu 中的 contextual menu 之 contextual action mod ( >= 3.0)

</div> </div> </div> 传统的是用 ListView,但是为了跟上时代的脚步,我想是时候用 RecyclerView 了,但是它没有提供如 ListView 一样的方法</div> listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL); listView.setMultiChoiceModeListener();

</div> 突然发现 ,RecyclerView没有这个方法,只能自己来做了,那么我们就需要想想如何设计这个问题。</div> </div> 首先,长按事件,可以在 ViewHolder 中提供接口</div> 然后在 Activity 实现,通过实现长按来开启contextual action mode</div> 这个时候,我们需要在 adapter 中改变 item 的颜色 ,我们可以用 notifyItemChanged(position) 来让 RecyclerView 重新调用 onBindViewHolder() 方法来给 item 设置背景色,然后,我们可以选择其它的 item 并同时让它们变色,再响应 contextual action mode 的 delete 响应事件来删除 item。这样看来一切很完美 ,那我们来一步一步实现。</div> </div> item 布局</div> </div> 实现 Recycler.Adapter</div> { private recyclerViewListener mListener; private List mDatas; public MyAdapter(List list, MyAdapter.recyclerViewListener listener) { mDatas = list; mListener = listener; } @Override public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.item, parent, false); ViewHolder viewHolder = new ViewHolder(v); return viewHolder; } @Override public void onBindViewHolder(MyAdapter.ViewHolder holder, int position) { holder.title.setText(mDatas.get(position)); } @Override public int getItemCount() { return mDatas.size(); }
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android Support Library 之 Toolbar
  • android toolbar 假标题居中,androidtoolbar

相关文章

  • 2017-05-26Android系统属性简介,android属性简介
  • 2017-05-26Android学习笔记(34):Android菜单
  • 2017-05-26go 常用命令扼要说明
  • 2017-11-18android 多线程断点续传视频列表
  • 2017-05-26Android之数据存储的五种方法,android五种
  • 2017-05-26redis使用内存调整及优化
  • 2017-05-26MySQL参数table_open_cache的设置
  • 2017-05-26单例模式——实战应用详解,单例实战详解
  • 2017-05-227.5.6 WebView处理网页返回的错误码信息
  • 2017-05-26Android的基本世界观——系统简介,组件逻辑及其他

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 8.1.3 Android中的13种Drawable小结 Part 3
    • pgpool的健康检查和failover代码
    • Android pm命令详解
    • 点击文本改变改行背景色,弹出对话框,改行背景
    • 第一节 搭建开发环境,第一节搭建开发
    • Android5.0开发范例大全 读书笔记(四),android5.0范例
    • Android横竖屏切换小结,Android屏切换小结
    • Android:广播接收器(BroadCastReceiver)要点随笔。,
    • 安卓--shape简单使用,安卓--shape
    • Android 系统版本&amp;API对照表,android系统版本

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有