Android Material Design入门

原作者:Ravi Tamada
原文地址:http://www.androidhive.info/…with-material-design/

你可能听说了在Android Lollipop(棒棒糖)版本中有关Material Design的介绍。在Material Design中,介绍了许多新的东西,像Material主题、新的widget、自定义阴影、矢量图片和自定义动画。如果你还没有使用过Material Design,那么这篇文章会给你一个好的开始。

在这个教程中,我们将学习Material Design开发基础的步骤,比如编写自定义主题、使用RecyclerView实现导航抽屉。

通过下面的链接获取更多的关于Material Design的知识:

Material Design Specifications
Creating Apps with Material Design

本文资源链接:

源码下载:点击获取
视频演示地址:Yutube

Android Material Design - Floating Labels for EditText

原文作者:Ravi Tamada
原文地址:http://www.androidhive.info/…aterial-design/

Android浮动标签在android设计支持库有介绍,在EditText上显示一个悬浮的标签。最初它在EditText中作为字段为空时的一个提示。当用户开始输入文本,它通过一个动画的形式,移动到悬浮标签的位置。

这篇文章通过一个简单的表单验证的例子,演示了Floating Lables的用法。

源码下载地址:http://download.androidhive.info/…dfyJJ0xyaJTvXugo0HTV0LBnG9w
视频演示地址:yutube-display

TextInputLayout

在Material Design支持库中一个新的元素,叫作TextInputLayout,用于在EditText上展示悬浮标签。为了显示悬浮标签,EditText被TextInputLayout
所包裹。你也可以给EditText设置一个错误的信息,通过使用setErrorEnabled()setError()方法。

TextInputLayout采用了EditTextandroid:hint属性的值来作为悬浮标签显示。

Android Material Design - Tabs

原作者:Ravi Tamada
原文地址:http://www.androidhive.info/2015/09/android-material-design-working-with-tabs/

Android Design支持库 提供了很好的向后兼容性,在Material Design支持库中的组件中,像Navigation Drawer, FloatingAction Button, Snackbar, Tabs, Floating labels , animation frameworks。在这里我们将学习怎样实现tabs。

在进一步深入了解之前,我建议先看一下tabs的文档,它可以告诉你在实现tabs的时候,什么该做什么不该做。

这里还有yutube的视频:到墙外看一看

使用Material

首先我们创建一个新的项目并且应用Material主题,如果你不知道Material Design,那么可以看看文章Material Design入门

1.在Android Studio中,File => New Project并且填好其它信息去创建一个新项目。

2.打开build.gradle然后添加支持库com.android.support:design:23.0.1

build.gradle

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
}

Android Material Design - Snackbar

原作者:Ravi Tamada
原文地址:http://www.androidhive.info/…example/

Material Design中一个有趣的组件介绍就是**Snackbar。Snackbar就像Toast**消息,只是它提供了动作交互。Snackbar在屏幕底部显示,并且可以滑动关闭。

这篇文章讲述的是关于Snackbar和一些不同场景下的例子。

源码下载

戳我下载

1.简单的Snackbar

下面是一个简单的Snackbar语法。make方法接收三个参数:View、显示的信息、消息显示的持续时间。

通常传递 CoordinatorLayout 作为view参数是最好的选择,因为它允许Snackbar一些特性,像滑动取消、像FloatingActionButton控件的自动移动。

并且显示的持续时间应该是LENGTH_SHORT, LENGTH_LONG或者LENGTH_INDEFINITE。当LENGTH_INDEFINITE被使用时,snackbar显示的时间将是不确定的,而且可以滑动删除。

Snackbar snackbar = Snackbar
        .make(coordinatorLayout, "Welcome to AndroidHive", Snackbar.LENGTH_LONG);

snackbar.show();

example

Android之Log混淆

作为Android开发工程师,项目开发的过程中,日志的打印是必不可少的,通过这些日志我们可以很好分析程序运行的状况与正确性,可以使用的日志输出有哪种形式呢?发布release版本应该怎么屏蔽掉这些日志呢?

日志形式

  • Java形式
    System.out.println(" log for test ");
    这个一般不提倡使用
  • Android Log
    Log.d(TAG, " log for test ");
    这个是Android标准的日志输出类:android.util.Log

TAG定义

关于TAG的命名简单说一下,基本上有以下几种形式:

  • 人名
    Log.d("gogh" " log for test ");
    与代码无关,无法定位日志的位置
  • 类名
    private static final String TAG = LogUtils.class.getSimpleName();
    Log.d(TAG, " log for test ");
    经过混淆的类,类名会改变为a、b这种形式,相应的TAG值也会改变,同样无法定位相关代码域。
| | 总字数统计:93.5k