<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Rukey7的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/github_35180164</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; github_35180164]]></copyright><item><title><![CDATA[ListView和RecyclerView列表点击反馈]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/54025071</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/54025071</guid><author>github_35180164</author><pubDate>Thu, 05 Jan 2017 00:06:07 +0800</pubDate><description><![CDATA[整理下Android开发中列表点击反馈的一些知识点，就是点击Item会出现背景阴影的效果。
目前最常用的两个列表控件ListView和RecyclerView，可以说RecyclerView作为ListView的升级版有着更强大的功能，现在也基本都使用RecyclerView居多。当然了，RecyclerView还是有些属性设置没有但ListView有，就是下面要说的点击反馈。]]></description><category></category></item><item><title><![CDATA[基于ijkplayer的视频播放器，仿Bilibili客户端，集成沉浸式全屏、弹幕、触屏控制、视频源切换等功能]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/53376923</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/53376923</guid><author>github_35180164</author><pubDate>Tue, 29 Nov 2016 13:48:59 +0800</pubDate><description><![CDATA[该视频播放器基于Bilibili的开源项目ijkplayer做的，是在github上的demo基础上搭建了个播放界面，如果你之前有研究过这个demo代码，那你看这个库对你来说就非常简单了。至于还不知道ijkplayer这个开源库的话可以先去了解下，这应该是目前github最火的开源视频播放器了吧，网上对这个的介绍也很多这里就不讲这个了。]]></description><category></category></item><item><title><![CDATA[一个辅助开发的UI布局，包括拖拽、滚动、动画、背景模糊功能]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52606923</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52606923</guid><author>github_35180164</author><pubDate>Wed, 21 Sep 2016 14:52:31 +0800</pubDate><description><![CDATA[这是一个辅助开发的UI库，适用于某些特殊场景，如固定范围拖拽、动画、背景模糊效果等]]></description><category></category></item><item><title><![CDATA[浅析ButterKnife的实现 (四) —— OnClick]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52211544</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52211544</guid><author>github_35180164</author><pubDate>Mon, 15 Aug 2016 18:05:02 +0800</pubDate><description><![CDATA[讲完了View注解，下面来介绍怎么给View设置点击监听。
@OnClick
定义个用来设置点击监听的注解：]]></description><category></category></item><item><title><![CDATA[浅析ButterKnife的实现 (三) —— BindView]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52208691</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52208691</guid><author>github_35180164</author><pubDate>Mon, 15 Aug 2016 14:16:21 +0800</pubDate><description><![CDATA[相关文章：
如何实现ButterKnife (一) —— 搭建开发框架

如何实现ButterKnife (二) —— BindResource

这里开始讲解最常用的绑定View的注解了，这个会比资源绑定注解复杂一点，不过大体流程都是相似的。

@Bind
定义个用来注入View资源的注解：
/**
 * View绑定
 */
@Retention(RetentionPolic]]></description><category></category></item><item><title><![CDATA[浅析ButterKnife的实现 (二) —— BindResource]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52203048</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52203048</guid><author>github_35180164</author><pubDate>Mon, 15 Aug 2016 09:33:53 +0800</pubDate><description><![CDATA[从最简单的 Resource 资源绑定来说明，大体了解整个开发基本流程。
包括 @BindString 和 @BindColor 注解的开发说明。]]></description><category></category></item><item><title><![CDATA[浅析ButterKnife的实现 (一) —— 搭建开发框架]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52192797</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52192797</guid><author>github_35180164</author><pubDate>Sat, 13 Aug 2016 15:42:49 +0800</pubDate><description><![CDATA[ButterKnife
的大名相信做Android开发的都应该知道，如果你还不知道那只能说明你平时都没关注过开源项目，优秀的开源项目对于开发来说帮助是巨大的，而学习优秀的开源项目对个人的提升帮助也是巨大的。ButterKnife
通过注解的方式帮助我们处理诸如 findViewById() 和 setonclicktListener()
等的重复性繁琐的工作，极大地减轻了程序员的工作量。Bu]]></description><category></category></item><item><title><![CDATA[自定义注解之编译时注解(RetentionPolicy.CLASS)（三）—— 常用接口介绍]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52171135</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52171135</guid><author>github_35180164</author><pubDate>Wed, 10 Aug 2016 17:33:11 +0800</pubDate><description><![CDATA[前面介绍了关于编译时注解的使用方式，这里再补充一个关于注解处理器开发中的一些常用类、接口的使用方式和概念。
Element和TypeMirror
我觉得这两个是开发注解处理器最重要的两个概念，理解这两个的概念和使用是非常重要的。
这两个都是接口，先来看一下Element的定义：]]></description><category></category></item><item><title><![CDATA[自定义注解之编译时注解(RetentionPolicy.CLASS)（二）——JavaPoet]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52141784</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52141784</guid><author>github_35180164</author><pubDate>Sun, 07 Aug 2016 13:24:59 +0800</pubDate><description><![CDATA[在使用编译时注解时，需要在编译期间对注解进行处理，在这里我们没办法影响程序的运行逻辑，但我们可以进行一些需处理，比如生成一些功能性代码来辅助程序的开发，最常见的是生成.java 源文件，并在程序中可以调用到生成的文件。这样我们就可以用注解来帮助我们处理一些固定逻辑的重复性代码（如 butterknife），提高开发的效率。
通过注解处理器来生成 .java 源文件基本上都会使用javapoet 这个库，JavaPoet一个是用于产生 .java 源文件的辅助库，它可以很方便地帮助我们生成需要的.java 源]]></description><category></category></item><item><title><![CDATA[自定义注解之编译时注解(RetentionPolicy.CLASS)（一）]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52121038</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52121038</guid><author>github_35180164</author><pubDate>Fri, 05 Aug 2016 13:54:15 +0800</pubDate><description><![CDATA[说到编译时注解(RetentionPolicy.CLASS)都要和注解处理器(Annotation Processor)扯上关系，因为这里是真正体现编译时注解价值的地方。需要注意的一点是，运行时注解(RetentionPolicy.RUNTIME)和源码注解(RetentionPolicy.SOURCE)也可以在注解处理器进行处理，不同的注解有各自的生命周期，根据你实际使用来确定。
注解处理器(Annotation Processor)
首先来了解下什么是注解处理器]]></description><category></category></item><item><title><![CDATA[自定义注解之源码注解(RetentionPolicy.SOURCE)]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52119731</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52119731</guid><author>github_35180164</author><pubDate>Thu, 04 Aug 2016 16:45:07 +0800</pubDate><description><![CDATA[源码注解(RetentionPolicy.SOURCE)的生命周期只存在Java源文件这一阶段，是3种生命周期中最短的注解。当在Java源程序上加了一个注解，这个Java源程序要由javac去编译，javac把java源文件编译成.class文件，在编译成class时会把Java源程序上的源码注解给去掉。需要注意的是，在编译器处理期间源码注解还存在，即注解处理器Processor
 也能处理源码]]></description><category></category></item><item><title><![CDATA[自定义注解之运行时注解(RetentionPolicy.RUNTIME)]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52118286</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52118286</guid><author>github_35180164</author><pubDate>Thu, 04 Aug 2016 15:05:20 +0800</pubDate><description><![CDATA[对注解概念不了解的可以先看这个：Java注解基础概念总结
前面有提到注解按生命周期来划分可分为3类：
1、RetentionPolicy.SOURCE：注解只保留在源文件，当Java文件编译成class文件的时候，注解被遗弃；
2、RetentionPolicy.CLASS：注解被保留到class文件，但jvm加载class文件时候被遗弃，这是默认的生命周期；
3、RetentionPol]]></description><category></category></item><item><title><![CDATA[Java注解基础概念总结]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52107204</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52107204</guid><author>github_35180164</author><pubDate>Thu, 04 Aug 2016 10:08:58 +0800</pubDate><description><![CDATA[注解的概念
注解（Annotation），也叫元数据（Metadata），是Java5的新特性，JDK5引入了Metadata很容易的就能够调用Annotations。注解与类、接口、枚举在同一个层次，并可以应用于包、类 型、构造方法、方法、成员变量、参数、本地变量的声明中，用来对这些元素进行说明，注释。
注解的语法与定义形式]]></description><category></category></item><item><title><![CDATA[Java注解处理器使用详解]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52055994</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52055994</guid><author>github_35180164</author><pubDate>Thu, 28 Jul 2016 15:45:50 +0800</pubDate><description><![CDATA[在这篇文章中，我将阐述怎样写一个注解处理器(Annotation Processor)。在这篇教程中，首先，我将向您解释什么是注解器，你可以利用这个强大的工具做什么以及不能做什么；然后，我将一步一步实现一个简单的注解器。
一些基本概念
在开始之前，我们首先申明一个非常重要的问题：]]></description><category></category></item><item><title><![CDATA[整理Java反射常用方法]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/52037112</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/52037112</guid><author>github_35180164</author><pubDate>Tue, 26 Jul 2016 16:30:25 +0800</pubDate><description><![CDATA[整理常用的Java反射相关的方法，方便查询记忆。]]></description><category></category></item><item><title><![CDATA[用来设置标签的流式布局简单设计]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/51970566</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/51970566</guid><author>github_35180164</author><pubDate>Wed, 20 Jul 2016 17:33:40 +0800</pubDate><description><![CDATA[其实现在用来设置标签的流式布局开源库和文章都挺多的，写这个是因为自己学习总结自定义View的相关知识，毕竟看的再多都不如自己实现一下来得有用。流式布局用来学习还是挺不错的，下面就一步一步来实现流式布局。]]></description><category></category></item><item><title><![CDATA[CoordinatorLayout自定义Behavior的运用]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/51881247</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/51881247</guid><author>github_35180164</author><pubDate>Mon, 11 Jul 2016 15:35:29 +0800</pubDate><description><![CDATA[之前写了关于CoordinatorLayout的使用介绍，现在补充下自定义Behavior的运用，如果对CoordinatorLayout的基本使用不了解可以先看这个：CoordinatorLayout的详细介绍。]]></description><category></category></item><item><title><![CDATA[CoordinatorLayout的详细介绍]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/51870301</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/51870301</guid><author>github_35180164</author><pubDate>Sun, 10 Jul 2016 10:12:32 +0800</pubDate><description><![CDATA[CoordinatorLayout是支持包"com.android.support:design"里很重要的一个控件，继承于FrameLayout，它提供了两个主要用途：
1. 作为APP的顶层布局；
2. 协调子控件的相互作用；
CoordinatorLayout提供了很棒的交互体验，并且也有良好的定制性，可以制作自己想要的交互效果，这里介绍关于CoordinatorLayout基本用法。]]></description><category></category></item><item><title><![CDATA[自定义动态切换字符的TextView]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/51839346</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/51839346</guid><author>github_35180164</author><pubDate>Wed, 06 Jul 2016 15:30:08 +0800</pubDate><description><![CDATA[实现TextView文字的动态切换，可用于搜索框预选词的切换]]></description><category></category></item><item><title><![CDATA[整理Android绘图时图形变换方法]]></title><link>https://blog.youkuaiyun.com/github_35180164/article/details/51829099</link><guid>https://blog.youkuaiyun.com/github_35180164/article/details/51829099</guid><author>github_35180164</author><pubDate>Tue, 05 Jul 2016 10:08:02 +0800</pubDate><description><![CDATA[Android提供了很丰富的绘图方法，包括图形变换控制，颜色变换控制，图形合成等好多内容，这里只简单整理下图形变换的控制方法。
首先要知道我们在用画布Canvas进行绘图，Canvas中包含了一个图形变换矩阵Matrix，图形变换都是通过控制Matrix的变换来实现的，包括平移、旋转、缩放和错切等变换。网上关于Matrix矩阵变换的原理很多，搜一下就有了，有高数底子理解起来更容易。再进行变换前先]]></description><category></category></item></channel></rss>