自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

刘涤生

纸上得来终觉浅,绝知此事要躬行。

  • 博客(60)
  • 资源 (4)
  • 收藏
  • 关注

原创 Java8特性④Stream收集数据

归约和汇总查找流中的最大值和最小值汇总连接字符串Collectorsreducing分组多级分组按子集收集数据分区小结附录Dish类 收集器可以简洁而灵活地定义collect用来生成结果集合的标准。更具体地说,对流调用 collect 方法将对流中的元素触发一个归约操作(由Collector来参数化)。一般来说,Collector 会对元素应用一个转换函数(很多时候是不体现任何

2017-05-06 16:01:34 438

原创 Java8特性③Stream的使用

筛选和切片谓词筛选筛选重复的元素限制元素数量跳过指定数量的元素映射map 操作flatMap 操作查找和匹配anyMatchallMatchnonMatchfindAnyfindFirstOptional归约reduce元素求和最大值最小值数值流原始类型流特化数值范围数值流应用勾股数构建流值创建流数组创建流文件生成流函数生成流创建无限流示例实战

2017-05-03 10:21:22 428

原创 Java8特性②Stream简介

流是什么流简介流与集合流操作中间操作终端操作使用流参考资料流是什么流是Java API的新成员,它允许你以声明性方式处理数据集合(通过查询语句来表达,而不是临时编写一个实现)。可以把它们看成遍历数据集的高级迭代器。此外流还可以透明地并行处理,无需写任何多线程代码了。如下面代码所示:public static List<String> getLowCalorisInJava8(List

2017-05-03 10:10:15 259

原创 Java8特性① Lambda 表达式

简介概念组成表达式如何使用 Lambda函数式接口函数描述符Lambda 实践第1步行为参数化第2步函数式接口传递行为第3步执行一个行为第4步传递 Lambda使用函数式接口PredicateConsumerFunction原始类型特化常用的函数式接口类型检查推断以及限制类型检查同样的 Lambda不同的函数式接口类型推断使用局部变量方法引用如何使用

2017-05-03 10:08:39 354

原创 面向对象的原则之单一职责原则

单一职责的英文名称是Single Responsibility Principle,缩写是SRP。SRP的定义就是:就一个类而言,应该仅有一个引起它变化的原因。简单说来,一个类中应该是一组相关性很高的函数、数据的封装。单一职责的划分界限并不是总是那么清晰,很多时候需要靠个人经验来界定。当然,最大的问题就是堆职责的定义,什么是类的职责,以及怎么划分类的职责。接下来以小明的工作过程为示例描述单一职责原则

2016-03-15 09:06:51 226

原创 JavaScript基础知识

JavaScript会带你进入新境界。你已经了解了HTML标记(结构),而且知道了CSS样式(表示),剩下的就是JavaScript(行为)。如果你只知道结构和表示,当然创建一个漂亮的页面时没有问题的,不过它们只是页面而已。用JavaScript增加行为时,你就能创建一种交互式体验。JavaScript能做什么一旦有一个包含< script >元素的页面(或者包含引用,指向一个单独的JavaScri

2016-03-15 09:04:52 239

原创 HTML5入门

HTML5是下一代的HTML。什么是HTML5HTML5将成为HTML、XHTML以及HTML DOM的新标准。 HTML的上一个版本诞生于1999年。自从那以后,Web世界已经经历了巨变。HTML5仍处于完善之中。然而,大部分现代浏览器已经支持HTML5特性。HTML5是如何起步的?HTML5是W3C与WHATWG合作的结果W3C是指World Wide Web Consortium,万维网联盟

2016-03-15 09:03:12 369

原创 Android 5.x之 Notification

Android 5.x之 NotificationNotification可以让我们在获得消息的时候,在状态栏、锁屏界面来显示相应的消息,如果没有Notification的话,很难想象我们的QQ和微信以及其他应用就没有办法主动通知我们,我们需要时候打开手机检查是否有新的消息到来,而这着实让人不爽。接下来,我们介绍三种Notification,分别是普通Notification,折叠式Notifica

2016-03-12 22:17:31 252

原创 Android Design Support Library之CoordinatorLayout和CollapsingToolbarLayout

CoordinatorLayout是Android Design Support Library中比较难的控件,它是用来组织它的子View之间协助的一个父View,它直接继承于ViewGroup。CoordinatorLayout默认情况下可理解是一个FrameLayout,它的布局方式是一层一层叠加上去的,这里我们来介绍它常用的两种情况。1.CoordinatorLayout实现ToolBar的隐

2016-03-08 23:36:59 314

原创 Android Design Support Library之NavigationView

NavigationView在MD设计中非常重要,之前Google提出使用Drawlayout来实现导航抽屉。这次,在Android Design Support Library中Google官方提供了NavigationView来实现导航菜单界面。下面,我们开始用NavigationView来实现抽屉菜单界面1.配置build.gradle:dependencies { compile f

2016-03-08 22:53:39 271

原创 Android 5.x之Toolbar和Palette

Toolbar是Android5.0后应用的内容的标准工具栏,可以说是ActionBar的升级版,两者不是独立的关系,要使用Toolbar还是得跟ActionBar有关系的。相比ActionBar,Toolbar最明显的一点就是变得很自由,可以随处放置,具体的使用方法和ActionBar很类似。1.Toolbar引入首先还是得引入v7包,Android studio在build.gradle配置如下

2016-02-27 23:48:36 328

原创 Android 5.x之CardView

Android 5.x版本中增加了CardView控件,CardView继承自FrameLayout类,它的功能是实现在一个卡片布局中显示相同的内容,卡片布局可以设置圆角和阴影,还可以布局其他的View。CardView即可作为一般的布局使用,也可以作为RecyclerView的Item使用。接来下,我们进入CardView学习之旅1.build.gradle首先,和RecyclerView一样,导

2016-02-27 21:46:58 426

原创 Android 5.x之RecyclerView

RecyclerView是Android官方推出的旨在取代ListView、GridView的控件,可以通过导入support-V7进行使用。据官方介绍,该控件用于在有限的窗口中展示大量数据集,同样能实现此效果的有ListView、GridView。那么有了ListView、GridView之后为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构,它提供了一种插拔式

2016-02-26 17:03:35 271

原创 Android Design Support Library之TabLayout

TabLayout是Android Design Support Library库中的控件。Google在2015年的IO大会上,给我们带来了更加详细的Material Design设计规范,同时也给我们带来了全新的Android Design Support Library,在这个support库中,Google给我们提供了更加规范的MD设计风格的控件。最重要的是,Android Design S

2016-02-26 14:48:38 262

原创 Android群英传之Android性能优化

1. 布局优化2. 内存优化3. 性能分析工具 4. 电量优化1. 布局优化系统在渲染UI界面的时候将消耗大量的资源,一个合格的UI不仅应该具有良好的视觉效果,更应该具有良好的使用体验,因此布局优化显得非常重要。1.1 Android UI渲染机制人眼所感觉的流畅画面,需要画面的帧数达到40帧每秒到60帧每秒。在Android中,系统通过VSYNC信号出发对UI的渲染、重绘,其间隔时间是1

2016-02-17 17:43:20 682

原创 Android群英传之Android绘图机制与处理技巧

1. Android绘图2. Android图像处理3. SurfaceView的使用1. Android绘图1.1 2D绘图1.2 Android XML绘图1.3 Android绘图技巧1.1 2D绘图 系统通过提供的Canvas对象来提供绘图方法。它提供了各种绘制图像的API,如drawPoint(点)、drawLine(线)、drawRect(矩形)、drawVertice

2016-02-17 17:33:47 372

原创 Android群英传之Android动画机制与使用技巧

Android动画机制与使用技巧1. Android视图动画2. Android属性动画3. Android布局动画4. Interpolators(插值器)5. 自定义动画6. 视图动画与属性动画的区别1. Android视图动画 Android框架定义了透明度、旋转、位移、缩放几种常见的动画,而且控制的是整个View,实现原理是每次绘制视图时View所在的ViewGroup中

2016-02-17 17:28:38 435

原创 Android群英传之Android Scroll分析

Android Scroll分析1. 滑动效果是如何产生的2. 实现滑动的方法1. 滑动效果是如何产生的 滑动一个View,本质上来说就是移动一个View。改变其当前所处的位置,它的原理都是通过不断改变View的坐标来实现这一效果。要实现View的滑动就必须监听用户触摸的事件,并根据事件传入的坐标,动态且不断改变View的坐标,从而实现View跟随用户触摸的滑动而滑动。1.1 Andro

2016-02-17 17:26:45 238

原创 Android群英传之Activity与Activity调用栈分析

Activity与Activity调用栈分析2015/12/7 16:28:54 1. Activty2. Android任务栈简介3. AndroidMainifest启动模式4. Intent Flag启动模式5. 清空任务栈6. Activity任务栈使用1. ActivtyActivity作为四大组件中出现频率最高的组件,我们再Android的各个地方都能看见它的影子。了解Ac

2016-02-17 17:25:36 391

转载 Android官方数据绑定框架DataBinding

转载自一叶飘舟Android新推出了一个官方的数据绑定框架Data Binding Library,既然是官方推出的新玩意,我们就有必要了解一下Android新带来的数据绑定框架,等到该框架推出正式版的时候,我们就可以快速地运用到项目中去。数据绑定框架给我们带来了很大的方便性,以前我们可能需要在Activity里写很多的findViewById,烦人的代码也增加了我们代码的耦合性,现在我们马上就可以

2016-02-16 20:34:40 821

原创 Android studio启动时禁止更新

在Android Studio安装目录/bin/idea.properties文件中加入如下这行代码disable.android.first.run=true

2016-02-16 11:02:17 2610

转载 Android样式之Shape

转载自Keegan小钢引言RectangleOvalLineRing引言一个应用,应该保持一套统一的样式,包括Button、EditText、ProgressBar、Toast、Checkbox等各种控件的样式,还包括控件间隔、文字大小和颜色、阴影等等。web的样式用css来定义,而android的样式主要则是通过shape、selector、layer-list、level-list、

2016-02-16 09:56:59 270

转载 Android样式之View Animation

Android样式的开发:View Animation篇 转载自Keegan小钢drawable汇总篇讲过两个动画,animation-list定义帧动画,animated-rotate定义旋转动画,这两个属于drawable动

2016-02-16 09:56:45 183

转载 Android样式之Property Animation

Android样式的开发:Property Animation篇 转载自Keegan小钢前篇文章说过,Android框架还提供了两种动画体系,前一篇已经总结了视图动画(View Animation)的用法,本篇则接着总结另一种动画体系——属性动画(Property Animation)的用法。视图动画只能作用于View,而且视图动画改变的只是View的绘制效果,View

2016-02-16 09:56:26 190

转载 Android样式之Selector

转载自Keegan小钢shape只能定义单一的形状,而实际应用中,很多地方比如按钮、Tab、ListItem等都是不同状态有不同的展示形状。举个例子,一个按钮的背景,默认时是一个形状,按下时是一个形状,不可操作时又是另一个形状。有时候,不同状态下改变的不只是背景、图片等,文字颜色也会相应改变。而要处理这些不同状态下展示什么的问题,就要用selector来实现了。selector标签,可以添加一个或多

2016-02-16 09:56:04 347

转载 Android样式之layer-list

转载自Keegan小钢上图Tab的背景效果,和带阴影的圆角矩形,是怎么实现的呢?大部分的人会让美工切图,用点九图做背景。但是,如果只提供一张图,会怎么样呢?比如,中间的Tab背景红色底线的像素高度为4px,那么,在mdpi设备上显示会符合预期,在hdpi设备上显示时会细了一点点,在xhdpi设备上显示时会再细一点,在xxhdpi上显示时又细了,在xxxhdpi上显示时则更细了。因为在xxxhdpi上

2016-02-16 09:55:49 162

转载 Android样式之drawable

转载自Keegan小钢普通图片Bitmap标签点九图片nine-patch标签color标签inset标签clip标签scale标签level-list标签transition标签rotate标签animation-list标签animated-rotate标签结束Android有很多种drawable类型,除了前几篇详细讲解的shape、selector、layer-

2016-02-16 09:55:35 493

转载 Android样式之Style

Android样式6:Style2015/12/2 16:10:57 转载自Keegan小钢前言样式的定义主题前言 整合所有资源,定义成统一的样式。哪些该定义成统一的样式呢? 举几个例子吧:每个页面标题栏的标题基本会有一样的字体大小、颜色、对齐方式、内间距、外间距等,这就可以定义成样式;很多按钮也都使用一致的背景、内间距、文字颜色、文字大小、文字的对齐方式等,这也可以定义成样式;

2016-02-16 09:54:48 258

原创 第一行代码笔记之七高级技巧

1. 全局获取Context public class MyApplication extends Application { private static Context mContext; @Override public void onCreate() { super.onCreate(); mC

2016-02-15 17:34:21 185

原创 第一行代码笔记之六Service

服务1.服务是什么2.Android多线程编程3.服务的基本用法4.服务的声明周期5.服务的更多技巧6.服务的最佳实践1.服务是什么服务(Service)是Android中实现程序后台运行的解决方案它非常适合用于去执行那些不需要和用户交互而且还要长期运行的任务。服务的运行不依赖于任何用户界面,即使当程序切换到后台,或者用户打开了另外一个应用程序,服务仍然能够保持正常运行。需要注意的是,

2016-02-15 17:32:07 393

原创 第一行代码笔记之五数据持久化

1. 文件存储2. SharedPreference3. SQLite4. SQLite数据库的最佳实践简介数据持久化就是将那些在内存中的瞬时数据保存到存储设备中,保证计时在设备掉电的情况下,这些数据仍然不会丢失。保存在内存中的数据是处于瞬时状态的,而保存在存储设备中的数据是处于持久状态的,持久化技术则是提供了一种机制可以让数据在瞬时状态和持久化状态之间进行转换。1. 文件存储文件存储是An

2016-02-15 17:26:29 217

原创 第一行代码笔记之四广播接收者

1. 广播机制简介2. 接收系统广播3. 发送自定义广播4. 使用本地广播5. 广播的最佳实践-实现强制下线功能1. 广播机制简介为什么说Android中的广播机制灵活呢?这是因为Android中的每个应用程序都可以对自己感兴趣的广播进行注册,这样该程序就只会接收到自己所关心的广播内容,这些广播可能是来自系统的,也可能是来自于其他应用程序的。Android提供了一套完整的API,允许应用程

2016-02-15 17:19:05 212

原创 第一行代码笔记之三Fragment

1. Fragment是什么2. Fragment使用方式3. Fragment生命周期4. 动态加载布局的技巧5. Fragment的最佳实践1. Fragment是什么碎片( Fragment)是一种可以嵌入在活动当中的 UI 片段,它能让程序加合理和充分地利用大屏幕的空间,因而在平板上应用的非常广泛。2. Fragment使用方式2.1 Fragment的简单用法新建一个左侧碎片布局

2016-02-15 17:08:41 387

原创 第一行代码笔记之二Activity

1. Activity是什么2. Activity的基本用法3. 使用Intent在Activity之间跳转4. Activity的生命周期5. Activity的启动模式6. Activity的最佳实践1. Activity是什么Activity是一种可以包含用户界面的组件,主要用于和用户进行交互。一个应用程序中可以包含零个或多个活动,但不包含任何Activity的活动很少见。2. A

2016-02-15 16:56:11 695

原创 第一行代码笔记之一Android系统架构

Android系统架构Android可以大致分为四层架构,五块区域1 Linux内核层Linux层,Android中最低层的核心部分。Linux层包含了Android系统的核心服务,包括硬件驱动、进程管理、安全系统、Binder驱动、Logcat驱动等。2 系统运行库层和Dalvik或ART2.1 系统运行库层这一层通过一些C/C++库为Android系统提供了主要特性的支持,如SQLite库、Su

2016-02-15 16:40:59 280

原创 View之Spinner

1.条目Menu <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="colors"> <item>red</item> <item>orange</item> <item>yellow</item>

2016-02-15 16:33:32 209

原创 View之PopupMenu

1.Menu布局 <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/search" android:icon="@android:drawable/ic_menu_search" android:

2016-02-15 16:29:56 246

原创 View之ExpandableLists

ExpandableLists2016/2/1 10:16:27 1. Custom Adapter实现 public class Expandable1 extends ExpandableListActivity { private MyExpandableListAdapter mAdapter; @Override public void

2016-02-15 16:27:56 248

原创 View之DateTimePicker

DateTimePicker2016/1/29 16:02:08 1. 布局<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content"

2016-02-15 16:24:30 329

原创 View之Controls

Controls2016/2/1 10:10:13 1.布局 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"

2016-02-15 16:15:22 559

Java 8实战

本书全面介绍了Java 8 这个里程碑版本的新特性,包括Lambdas、流和函数式编程。有了函数式的编程特性,可以让代码更简洁,同时也能自动化地利用多核硬件。全书分四个部分:基础知识、函数式数据处理、高效Java 8 编程和超越Java 8,清晰明了地向读者展现了一幅Java 与时俱进的现代化画卷。

2017-10-26

Android ApiDemos

Android ApiDemos

2017-01-17

classyshark分析apk

Android apk查看分析

2016-03-30

t264源码包

t264视频编码解码源码包,适应与h.264格式编码

2014-04-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除