RecyclerView控件

依赖  compile 'com.android.support:recyclerview-v7:24.1.1'
RecyclerView也是容器控件,大多数的效果显示可通过代码来控制,这样更加自由。

RecyclerView使用起来很方便因为它提供:
1.它为item的定位提供一个layoutmanager
2.为item的操作提供一个缺省的animations
3.您还可以灵活地定义这个小部件的自定义布局管理器和动画

setLayoutManager()方法接受一个 LayoutManager 布局管理参数。参数类型可以有以下几种:
1.LinearLayoutManager:线性布局
2.GridLayoutManager:网格布局
3.StaggeredGridLayoutManager:流式布局

这样设置recylerView.setLayoutManager(new LinearLayoutManager(this, LinearLayout.VERTICAL, true));

第一个参数是Context,第二个参数:布局方向LinearLayout.VERTIAL和LinearLayout.HORIZONTAL。
第三个参数:表示是否从最后的item数据开始显示,true表示是,false表示正常显示——从开头显示。
setItemAnimator()方法的作用是设置当前RecyclerView容器有子Item改变时(添加item或者删除item)导致
整个布局的动画效果。一般我们new 一个系统默认的动画出来就好了
recylerView.setItemAnimator(new DefaultItemAnimator());

Palette

依赖:compile 'com.android.support:palette-v7:22.2.0'

Palette根据图片来决定标题的颜色和标题栏的背景色。

它能让你从图像中提取突出的颜色。这个类能提取以下突出的颜色:
Vibrant(充满活力的)
Vibrant dark(充满活力的黑)
Vibrant light(充满活力的亮)
Muted(柔和的)
Muted dark(柔和的黑)
Muted lighr(柔和的亮)
使用:
1.先获取Bitmap
 Bitmap bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.img1);
2.创建Palette
Palette.from(bitmap).generate(new Palette.PaletteAsyncListener() {
            @Override
            public void onGenerated(Palette palette) {
      3.采集样本(swatch),有6种样本
           Palette.Swatch vibrant = palette.getVibrantSwatch();//有活力
           Palette.Swatch DVibrant= palette.getDarkVibrantSwatch();//有活力 暗色
           Palette.Swatch LVibrant = palette.getLightVibrantSwatch();//有活力 亮色
           Palette.Swatch Muted= palette.getMutedSwatch();//柔和
           Palette.Swatch DMuted= palette.getDarkMutedSwatch();//柔和 暗色
           Palette.Swatch LMuted = palette.getLightMutedSwatch();//柔和 亮色
      4,使用样本
           //需要注意的是getVibrantSwatch()可能会返回一个null值,所以检查一下是必须
             TextView titleView = ...;
             if (LVibrant != null) {
                 titleView.setBackgroundColor(swatch.getRgb());
                 titleView.setTextColor(swatch.getTitleTextColor());
              }   
            }
        });

使用样本Swatch有以下几种方法:
getPopulation(): the amount of pixels which this swatch represents.(该样本含有的像素数量)
getRgb(): the RGB value of this color.(RGB值)
getHsl(): the HSL value of this color.(HSL值)
getBodyTextColor(): the RGB value of a text color which can be displayed on top of this color.(内容颜色)
getTitleTextColor(): the RGB value of a text color which can be displayed on top of this color.(标题颜色)

介绍一点Bitmap

Bitmap代表一张位图,扩展名可以是.bmp或者.dib。位图是Windows标准格式图形文件,他将图像定义为由点(像素)组成,每个点可以有多种色彩表示,包括2,4,8,16和32位色彩。例如,一幅1024*768分辨率的32位真彩图片,其所占存储字节数为:1024*768*32/8=3072KB。
位图文件图像效果好,但是非压缩格式的,需要占用较大存储空间,不利于在网络上传送。jpg格式则恰好弥补了位图 的这个缺点。

Bitmap是Android系统中的图像处理的最重要类之一。用它可以获取图像文件信息,进行图像剪切,旋转,缩放等操作,并可以指定格式保存图像
文件。
Bitmap实现子啊android.graphics包中。

1.从资源文件中获取

Bitmap rawBitmap = BitmapFactory.decodeResource(getResources(),R.drawable.img1);

2.从SD卡中得到图片
(方法1)
String SDCarePath=Environment.getExternalStorageDirectory().toString();
String filePath=SDCarePath+"/"+"haha.jpg";
Bitmap rawBitmap1 = BitmapFactory.decodeFile(filePath, null);
(方法2)
InputStream inputStream=getBitmapInputStreamFromSDCard("haha.jpg");
Bitmap rawBitmap2 = BitmapFactory.decodeStream(inputStream);

Android Support Library控件详细介绍之RecyclerView的更多相关文章

  1. Tkinter 控件详细介绍

    Tkinter 控件详细介绍 1.Button 按钮.类似标签,但提供额外的功能,例如鼠标掠过.按下.释放以及键盘操作/事件 2.Canvas 画布.提供绘图功能(直线.椭圆.多边形.矩形) ;可以包 ...

  2. Android 中常见控件的介绍和使用

    1 TextView文本框 1.1 TextView类的结构 TextView 是用于显示字符串的组件,对于用户来说就是屏幕中一块用于显示文本的区域.TextView类的层次关系如下: java.la ...

  3. 介绍三个Android支持库控件:TabLayout+ViewPager+RecyclerView

    本文主要介绍如下三个Android支持库控件的配合使用: TabLayout:android.support.design.widget.TabLayout ViewPager:android.sup ...

  4. 使用Android Support Design 控件TabLayout 方便快捷实现选项卡功能

    1.概述 TabLayout是在2015年的google大会上,google发布了新的Android Support Design库的新组件之一,以此来全面支持Material Design 设计风格 ...

  5. Swift UI控件详细介绍(上)

    UI控件 首先介绍一下AppDelegate.swift@UIApplicationMain 调用了OC中的UIApplicationMain函数:UIApplicationMain是iOS应用程序的 ...

  6. Android Support Design 控件 FloatingActionButton

    经常刚可以看到悬浮控件,比如印象笔记的下面那个绿色的悬浮按钮,这个控件非常简单也是来自Design Support Library中同理需要在android studio中加入依赖库:design库 ...

  7. Android自定义组合控件详细示例 (附完整源码)

    在我们平时的Android开发中,有时候原生的控件无法满足我们的需求,或者经常用到几个控件组合在一起来使用.这个时候,我们就可以根据自己的需求创建自定义的控件了,一般通过继承View或其子类来实现. ...

  8. iOS:UIPageViewController翻页控制器控件详细介绍

    翻页控制器控件:UIPageViewController 介绍: 1.它是为我们提供了一种类似翻书效果的一种控件.我们可以通过使用UIPageViewController控件,来完成类似图书一样的翻页 ...

  9. 界面绚丽的SharePoint仪表盘控件Nevron Gauge for SharePoint 控件详细介绍

    Nevron .NET Vision 是一款用于创建独特的.强大的数据表示应用程序的最终控件,它具有超强的数据可视化性能. 整合了Nevron Chart for .NET, Nevron Diagr ...

随机推荐

  1. ContentProvider官方教程(8)自定义MIME

    MIME Type Reference Content providers can return standard MIME media types, or custom MIME type stri ...

  2. VC++ 使用WebBrowser控件中html文件以资源形式加载

    . . . . //加载资源文件中的HTML,IDR_HTML1就是HTML文件在资源文件中的ID wchar_t self_path[MAX_PATH] = { }; GetModuleFileNa ...

  3. JavaScript运算符

    JavaScript运算符 1.算数运算符 设定a = 5. 运算符 描述 例子 结果 + 加 b=a+2 b=7 - 减 b=a-2 b=3 * 乘 b=a*2 b=10 / 除 b=a/2 b=2 ...

  4. 【CC评网】2013.第39周 漂亮的作息表

    作息表 网上看到一份夏令时的作息表,让人羡慕不已: 5:00 起床——迷糊5分钟,喝500ML白开水,坐马桶看Google reader 5:20 小区6KM(大约25min—30min)+100个俯 ...

  5. table布局注意点

    1.同行等高. 2.宽度自动调节(table-layout:fixed;). 3.处理垂直居中又是神器 参考链接: http://www.blueidea.com/tech/web/2008/6257 ...

  6. C#正则表达式编程(三):Match类和Group类用法

    前面两篇讲述了正则表达式的基础和一些简单的例子,这篇将稍微深入一点探讨一下正则表达式分组,在.NET中正则表达式分组是用Match类来代表的.首先先看一段代码: /// <summary> ...

  7. LINQ之路 1: LINQ介绍

    LINQ是.NET Framework 3.5的新特性,其全称是 Language Integrated Query,即语言集成查询,是指将查询功能和语言结合起来.从而为我们提供一种统一的方式,让我们 ...

  8. Java中的内省

    为什么要学内省? •开发框架时,经常需要使用java对象的属性来封装程序的数据,每次都使用反射技术完成此类操作过于麻烦,所以sun公司开发了一套API,专门用于操作java对象的属性.   什么是Ja ...

  9. 文字垂直居中,水平居中 a标签水平居中只要给他的父级设置text-align=center

    在说到这个问题的时候,也许有人会问CSS中不是有vertical-align属性来设置垂直居中的吗?即使是某些浏览器不支持我只需做少许的CSS Hack技术就可以啊!所以在这里我还要啰嗦两句,CSS中 ...

  10. cocos2d-x 3.X(一)环境搭建问题

    在按照官网上的教程(http://cn.cocos2d-x.org/tutorial/show?id=1478)步骤一步一步安装完成同时也添加了各项环境变量,运行cocos命令也没有任何问题,但就是在 ...