第二天课堂笔记

##5.0新特性
###十大新特性
1. 全新Material Design设计风格

* 新的视觉语言,在基本元素的处理上,借鉴了传统的印刷设计,字体版式、网格系统、空间、比例、配色、图像使用等这些基础的平面设计规范
2. 支持多种设备
3. 全新的通知中心设计
4. 支持64位ART虚拟机

* 谷歌承诺所有性能都会比原来提升一倍,Android Lollipop支持更大的寄存器,支持新的指令集,提升了内存寻址空间,未来Android智能手机将支持4GB以上的内存。
5. Project Volta电池续航改进计划
6. 全新的“最近应用程序”
7. 改进安全性
8. 不同数据独立保存
9. 改进搜索
10. `新的API支持`,蓝牙4.1、USB Audio、多人分享等其它特性

###Material Design

>* 设计语言,设计标准,设计规范

>* 官网:http://www.google.com/design/spec/material-design/introduction.html

>* 中文翻译1:http://www.mobileui.cn/material-design/

>* 中文翻译2:http://design.1sters.com/#

##开发方面新增了哪些内容

> 关心有哪些新的api

###5.0主题
* 谷歌官方我们提供了三种配色风格
        
        黑色主题 Theme.Material
        明亮主题 Theme.Material.Light
        明亮主题黑色ActionBar Theme.Material.Light.DarkActionBar    
* 主题修改:重写属性
        
        <style name="CustomTheme1" parent="android:Theme.Material.Light.DarkActionBar">
        <!--通知栏颜色-->
        <item name="android:colorPrimaryDark">#ff3367d6</item>
        <!--标题栏颜色-->
        <item name="android:colorPrimary">#ff4285f4</item>
        <!--窗口颜色-->
        <item name="android:windowBackground">@color/windowBackground_CustomTheme1_color</item>
        <!--底部操作栏颜色-->
        <item name="android:navigationBarColor">#ff000000</item>
        </style>
        
* 主题切换
    
        private void changeTheme(int redTheme) {
        overridePendingTransition(0, 0);
        finish();
        Intent intent = new Intent(MainActivity.this, MainActivity.class);
        intent.putExtra("themeId", redTheme);
        overridePendingTransition(0, 0);
        startActivity(intent);
        }
###ToolBar&DrawerLayout&DrawerToggle的使用

>Toolbar是什么?大概说一下它的官方介绍。Toolbar是应用的内容的标准工具栏,`可以说是Actionbar的升级版`,两者不是独立关系,要使用Toolbar还是得跟ActionBar扯上关系的。相比Actionbar Toolbar最明显的一点就是变得很`自由,可随处放置`,因为它是作为一个`ViewGroup来定义使用的`,所以单纯使用ActionBar已经稍显过时了,它的一些方法已被标注过时。

1.引入v7包,去除actionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
    </style>

2.创建ToolBar的布局

<?xml version="1.0" encoding="utf-8"?>
    <android.support.v7.widget.Toolbar
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#ff0000">

</android.support.v7.widget.Toolbar>

3.使用toolbar
    
    //布局中使用
    <include layout="@layout/include_toolbar"></include>
    //写代码
    mToolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(mToolbar);//这个方法是在ActionBarActivity里面,对应的Activity需要继承actionBarActivity

4.集成Drawlayout
    
    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawLayout);
    mDrawerToggle = new ActionBarDrawerToggle(MainActivity.this,
    mDrawerLayout, mToolbar, R.string.open, R.string.close);

5.集成actionbarToggle
    
    mDrawerToggle.syncState();
    mDrawerLayout.setDrawerListener(mDrawerToggle);
###阴影效果
* 矩形的阴影效果
    1. 图形大小需要注意
    2. elevation有层次关系的作用
* 圆形Shape的阴影效果->可以直接设置
* 原形图片的阴影效果-->设置无效
    1. 代码中设置阴影

ViewOutlineProvider provider = new ViewOutlineProvider() {
                @Override
                public void getOutline(View view, Outline outline) {
                    outline.setOval(0, 0, view.getWidth(), view.getHeight());
                }
            };
            iv.setOutlineProvider(provider);
###图片的叠加裁剪(圆角图片)
        
    ViewOutlineProvider provider = new ViewOutlineProvider() {
    @Override
    public void getOutline(View view, Outline outline) {
        outline.setOval(0, 0, view.getWidth() - 30, view.getHeight() - 30);
    }
    };
    iv.setOutlineProvider(provider);
    iv.setClipToOutline(true);
    
###图片选择器-->统一张图片使用tint,`tintmodel`的属性
    <?xml version="1.0" encoding="utf-8"?>
    <bitmap xmlns:android="http://schemas.android.com/apk/res/android"
            android:src="@mipmap/g24"
            android:tint="#ff9cff94"
            android:tintMode="multiply"
        >
    </bitmap>
###vector矢量图
* 矢量图和位图的区别
* 矢量图展示

* 桃心

* 三角形
* 矢量图动画

* 参考1:file:///F:/android-sdk-studio/docs/reference/android/graphics/drawable/AnimatedVectorDrawable.html

* 参考2:Android 5.0学习之AnimatedVectorDrawable

<vector>元素的矢量资源,在res/drawable/(文件夹)
            <animated-vector>元素的矢量资源动画,在res/drawable/(文件夹)
            < objectAnimator>元素的一个或多个对象动画器,在res/anim/(文件夹)
###水波纹效果
###调色板
###状态动画,background可以设置属性动画,帧动画,矢量图动画,转场动画

> file:///F:/android-sdk-studio/docs/training/material/animations.html

###recycleView

> file:///F:/android-sdk-studio/docs/training/material/lists-cards.html
* view adapter layoutmanager
* 纵向
* 网格
* 瀑布流
* 横向
* 下拉刷新
###cardview
    hellword

来自为知笔记(Wiz)

时间: 2024-08-03 22:51:30

第二天课堂笔记的相关文章

九章算法系列(#2 Binary Search)-课堂笔记

前言 先说一些题外的东西吧.受到春跃大神的影响和启发,推荐了这个算法公开课给我,晚上睡觉前点开一看发现课还有两天要开始,本着要好好系统地学习一下算法,于是就爬起来拉上两个小伙伴组团报名了.今天听了第一节课,说真的很实用,特别是对于我这种算法不扎实,并且又想找工作,提高自己的情况. 那就不多说废话了,以后每周都写个总结吧,就趁着这一个月好好把算法提高一下.具体就从:课堂笔记.leetcode和lintcode相关习题.hdu和poj相关习题三个方面来写吧.希望自己能够坚持下来,给大家分享一些好的东

?统计学习精要(The Elements of Statistical Learning)?课堂笔记(一)

前两天微博上转出来的,复旦计算机学院的吴立德吴老师在开?统计学习精要(The Elements of Statistical Learning)?这门课,还在张江...大牛的课怎能错过,果断请假去蹭课...为了减轻心理压力,还拉了一帮同事一起去听,eBay浩浩荡荡的十几人杀过去好不壮观!总感觉我们的人有超过复旦本身学生的阵势,五六十人的教室坐的满满当当,壮观啊. 这本书正好前阵子一直在看,所以才会屁颠屁颠的跑过去听.确实是一本深入浅出讲data mining models的好书.作者网站上提供免

CSS基础入门 第4天课堂笔记

CSS基础入门 第4天课堂笔记(本课程共6天) 前端与移动开发学院 http://web.itcast.cn 目录 目录 2 一.复习 3 二.浮动性质的复习 4 三.浮动的清除 5 3.1 清除浮动方法1:给浮动的元素的祖先元素加高度. 5 3.2 清除浮动方法2:clear:both; 6 3.3 清除浮动方法3:隔墙法 7 3.4 清除浮动方法4:overflow:hidden; 8 3.5 清除浮动总结与案例 9 3.6 浏览器兼容问题 11 四.margin 13 4.1 margin

JAVA的面向对象编程--------课堂笔记

JAVA的面向对象编程--------课堂笔记 面向对象主要针对面向过程. 面向过程的基本单元是函数.   什么是对象:EVERYTHING IS OBJECT(万物皆对象)   所有的事物都有两个方面: 有什么(属性):用来描述对象. 能够做什么(方法):告诉外界对象有那些功能. 后者以前者为基础. 大的对象的属性也可以是一个对象.   为什么要使用面向对象: 首先,面向对象符合人类看待事物的一般规律. 对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节. 方法的定义非常重要.方法有参

?统计学习精要(The Elements of Statistical Learning)?课堂笔记(二)

继续一周一次的课堂笔记 :D 昨天去晚了站着听讲,感觉好好啊,注意各种集中.想想整个教室里面就是我和老师是站着的,自豪感油然而生. 第二次课讲的东西依旧比较简单,是这本书第二章的前半部分.作为一个好久之前已经预习过的孩子,我表示万分的得意(最小二乘法难道不是三四年前就学过的?话说以后我再面人的时候,就让他推导最小二乘估计量,嘻嘻...考验一下基本功). ------------原谅我的废话,笔记开始------------ 简单预测方法:最小二乘法(以下沿用计量经济学的习惯,简称OLS) OLS

2017年5月29号课堂笔记

2017年5月29号 阴天 空气质量:良 内容:JavaScript基础:输入输出及确认,统计字符出现的次数,系统函数,自定义函数, 自定义函数和事件的连用,四则运算小练习,方法的作用域 JavaScriptBOM对象(下次课堂笔记再补上,一起记录)history,location,open,document 一.输入输出及确认 仿写老师代码: <!DOCTYPE html><html><head lang="en"> <meta charse

HTML5培训第12节课堂笔记(本地存储、mui打开新页面、创建子页面)

HTML5培训第12节课堂笔记 1.     html5规范中本地储存localStorage与sessionStorage html5中的Web Storage包括了两种存储方式:sessionStorage和localStorage. sessionStorage用于本地存储一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁.因此  sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储. localStorage用

2017年5月12号课堂笔记

2017年5月12号 星期五 空气质量:轻度污染(昨天的北风转今天的南风) 内容:html表格的基本使用,表格跨行跨列,高级表格,播放音乐,播放视频,网页布局,iframe内联框架: 文本框,密码框,单选按钮,复选框,下拉框  备注:周日晚想起来补上的周五课堂笔记(一带一路今天开会天气好晴朗) 一.html表格的基本使用 模仿老师代码: <!DOCTYPE html><html><head lang="en"> <meta charset=&q

?统计学习精要(The Elements of Statistical Learning)?课堂笔记(三)

照例文章第一段跑题,先附上个段子(转载的哦~): I hate CS people. They don't know linear algebra but want to teach projective geometry. They don't know any probability but want to use graphical models. They don't understand stats at all but still do machine learning like c