博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Cooperation.GTST团队第二周项目总结
阅读量:6264 次
发布时间:2019-06-22

本文共 2712 字,大约阅读时间需要 9 分钟。

项目进展

  • 这周我们把工作主要放在了UI界面的实现上,为了让整款APP看上去能够更加高大上,我们决定采用Android 5.0开始推出的一个Material Design风格的导航控件Toolbar
  • 现在越来越多的开发者使用Toolbar来作为Android客户端的导航栏,以此来取代之前的Actionbar。与Actionbar相比,Toolbar明显要灵活的多。它不像Actionbar一样,一定要固定在Activity的顶部,而是可以放到界面的任意位置。除此之外,在设计Toolbar的时候,Google也留给了开发者很多可定制修改的余地,这些可定制修改的属性在API文档中都有详细介绍,如:
  1. 设置导航栏图标;
  2. 设置App的logo;
  3. 支持设置标题和子标题;
  4. 支持添加一个或多个的自定义控件;
  5. 支持Action Menu
    952106-20160522164733435-1969548402.png
  • 由于我们小组之前没有开发过APP,所以一开始对于UI界面的实现在网上搜集了大量的资料,并且花了很大功夫去探究Android Studio的功能,后来根据网上的一些资料大概能实现Toolbar的功能:
  • 首先,在布局文件activity_tool_bar.xml中添加进我们需要的 Toolbar控件
  • 接着在base_toolbar_menu.xml中添加action menu菜单项
  • 最后到ToolbarActivity中调用代码拿到这Toolbar控件,并在代码中做各种set操作
public class ToolBarActivity extends BaseActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_tool_bar);        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);        toolbar.setNavigationIcon(R.mipmap.ic_drawer_home);//设置导航栏图标        toolbar.setLogo(R.mipmap.ic_launcher);//设置app logo        toolbar.setTitle("Title");//设置主标题        toolbar.setSubtitle("Subtitle");//设置子标题        toolbar.inflateMenu(R.menu.base_toolbar_menu);//设置右上角的填充菜单        toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {            @Override            public boolean onMenuItemClick(MenuItem item) {                int menuItemId = item.getItemId();                if (menuItemId == R.id.action_search) {                    Toast.makeText(ToolBarActivity.this , R.string.menu_search , Toast.LENGTH_SHORT).show();                } else if (menuItemId == R.id.action_notification) {                    Toast.makeText(ToolBarActivity.this , R.string.menu_notifications , Toast.LENGTH_SHORT).show();                } else if (menuItemId == R.id.action_item1) {                    Toast.makeText(ToolBarActivity.this , R.string.item_01 , Toast.LENGTH_SHORT).show();                } else if (menuItemId == R.id.action_item2) {                    Toast.makeText(ToolBarActivity.this , R.string.item_02 , Toast.LENGTH_SHORT).show();                }                return true;            }        });    }}
  • Toolbar的基本使用如上所示,此外如果想修改标题和子标题的字体大小、颜色等,可以调用setTitleTextColorsetTitleTextAppearancesetSubtitleTextColorsetSubtitleTextAppearance这些API。
  • 如图所示,这是实现Toolbar代码的基本结构:
    952106-20160522164752138-1098471515.png

layout和menu文件夹分别是两个Activity的布局文件和actionmenu菜单文件,values、values-v19、values-v21 中包含了一些自定义的theme。

  • 代码托管截图:
    952106-20160522171003357-2057177427.png

总结

自从Material Design设计开始推出后,Google推出的这些新控件使用起来更加简单,这能让我们更好的把精力放在编写业务代码上。很多以前需要借助第三方开源库才能实现的效果,现在已经慢慢的不需要了。当然,我们依旧可以去深入的学习这些优秀开源代码,沉淀到更多的干货。这样,小菜也就慢慢成为大牛了。

转载于:https://www.cnblogs.com/Cooperation-GTST/p/5517177.html

你可能感兴趣的文章
[BZOJ5105]【[Code+#1]晨跑】
查看>>
bootstrap到底是用来做什么的(概念)
查看>>
高并发服务端分布式系统设计概要
查看>>
sqlite3.datebase.serialize(function(){})的问题
查看>>
Xml通用操作类
查看>>
网站访问数据统计工具
查看>>
11面向对象封装案例
查看>>
动态加载js小笔
查看>>
C#_IComparer实例 - 实现ID或者yearOfscv排序
查看>>
2016 hosts
查看>>
TypeKit ,use online fonts
查看>>
原生Ajax
查看>>
文件上传及下载
查看>>
七、jquery对象的学习,有难度
查看>>
Ajax_数据格式_HTML
查看>>
微信公众账号怎么快速增加粉丝
查看>>
HBase 笔记1
查看>>
loadrunner两个函数:取参数长度和时间戳函数
查看>>
Docker exec与Docker attach
查看>>
解决ssh登录Host key verification failed
查看>>