android.support.design

设计风格注意事项:
1、xml中顶部的布局写上fitsSystemWindows=”true”的话让最顶部状态栏采用colorPrimaryDark的颜色,否则状态栏不变;
2、Toolbar中menu~item中showAsAction属性共有五个值:ifRoom、never、always、withText、collapseActionView,可以混合使用。

ifRoom 会显示在Item中,但是如果已经有4个或者4个以上的Item时会隐藏在溢出列表中。当然个数并不仅仅局限于4个,依据屏幕的宽窄而定。

never 永远不会显示。只会在溢出列表中显示,而且只显示标题,所以在定义item的时候,最好把标题都带上。

always 无论是否溢出,总会显示。

withText withText值示意Action bar要显示文本标题。Action bar会尽可能的显示这个标题,但是,如果图标有效并且受到Action bar空间的限制,文本标题有可能显示不全。

collapseActionView 声明了这个操作视窗应该被折叠到一个按钮中,当用户选择这个按钮时,这个操作视窗展开。否则,这个操作视窗在默认的情况下是可见的,并且即便在用于不适用的时候,也要占据操作栏的有效空间。一般要配合ifRoom一起使用才会有效果。

下面为新控件介绍:

Design Support Library包含8个控件,具体如下:

Widget Name Description:

android.support.design.widget.CoordinatorLayout 协调者布局(超级FrameLayout),一般作为根布局,主要功能如下:

  1. 让浮动按钮FloatingActionButton上下滑动,为Snackbar留出空间。
    android.support.design_第1张图片

  2. 扩展或者缩小Toolbar或者头部,让主内容区域有更多的空间。
    android.support.design_第2张图片

  3. 控制哪个view应该扩展还是收缩,以及其显示大小比例,包括视差滚动效果动画。
    android.support.design_第3张图片

详情可参考:http://my.oschina.net/kooeasy/blog/484593

android.support.design.widget.AppBarLayout
AppBarLayout支持手势滑动操作,它的作用是把AppBarLayout包裹的内容都作为AppBar.
MD风格的滑动Layout
xml中写上android:theme=”@style/ThemeOverlay.AppCompat.Dark.ActionBar”或android:theme=”@style/AppTheme.AppBarOverlay”的话实现appbarlayout上面的字是白色,否则为默认黑色。

android.support.design.widget.TextInputLayout 强大带提示的MD风格的EditText

android.support.design.widget.FloatingActionButton MD风格的圆形按钮,来自于ImageView(app:borderWidth - 该属性尤为重要,如果不设置0dp,那么在4.1的sdk上FAB会显示为正方形,而且在5.0以后的sdk没有阴影效果。所以设置为borderWidth=”0dp”。)

android.support.design.widget.Snackbar 类似Toast,添加了简单的单个Action

android.support.design.widget.TabLayout 选项卡
详情可参考:http://www.bkjia.com/Androidjc/1040009.html

android.support.design.widget.NavigationView 替代DrawerLayout的SlideMenu,即drawer的左侧抽屉部分。需要用DrawerLayout作为根布局。

注意:1、把Toolbar放在DrawerLayout上面可以实现抽屉在ToolBar下面的样式;如


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />
    android.support.design.widget.AppBarLayout>


    <android.support.v4.widget.DrawerLayout
        android:id="@+id/drawer_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        
        <ListView
            android:id="@+id/lv_content"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            />

         
        <ListView
            android:id="@+id/id_lv_left_menu"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="start"
            android:background="#ffffffff"
            android:clipToPadding="false"
            android:divider="@null"
            android:listSelector="?attr/selectableItemBackground"
            android:paddingTop="0dp" />

    android.support.v4.widget.DrawerLayout>
LinearLayout>

2、只要指定android:layout_gravity=”start”的任意布局都可以作为抽屉,如listview scrollview,start或left为左抽屉,end或right为右抽屉。

android.support.design.widget.CollapsingToolbarLayout 可折叠MD风格ToolbarLayout

详情参考:http://www.open-open.com/lib/view/open1433385856119.html
http://www.tuicool.com/articles/aeQrYv3
http://www.open-open.com/lib/view/open1436152483833.html

你可能感兴趣的:(androidL)