<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SelfImprove]]></title><description><![CDATA[菜鸟要飞]]></description><link>https://blog.youkuaiyun.com/qq_28107395</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_28107395]]></copyright><item><title><![CDATA[二叉树的创建与遍历]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/83065475</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/83065475</guid><author>qq_28107395</author><pubDate>Mon, 15 Oct 2018 21:56:27 +0800</pubDate><description><![CDATA[test]]></description><category></category></item><item><title><![CDATA[Android Gson生成、解析json数据]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51774629</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51774629</guid><author>qq_28107395</author><pubDate>Tue, 28 Jun 2016 11:28:21 +0800</pubDate><description><![CDATA[package com.datong.gsondemo;

/**
 * Created by liyongjian on 2016/6/28.
 */
public class Person {

    private String name;
    private int age;

    public Person(String name, int age) {
        thi]]></description><category></category></item><item><title><![CDATA[Android 9-patch图片制作流程（nine-patch）]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51460595</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51460595</guid><author>qq_28107395</author><pubDate>Fri, 20 May 2016 17:18:36 +0800</pubDate><description><![CDATA[一、打开Android SDK文件夹下的draw9patch.bat文件


准备好你想做成.9图片的资源


点击Draw 9-patch左上角的File->open 9-patch，选择准备好的图片资源]]></description><category></category></item><item><title><![CDATA[屏幕适配全攻略（二）-- 解决方案]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51456213</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51456213</guid><author>qq_28107395</author><pubDate>Thu, 19 May 2016 19:13:15 +0800</pubDate><description><![CDATA[一、使用wrap_content、match_parent、weight
（1）、wrap_content 包裹内容
（2）、match_parent 填满父控件
（3）、layout_weight
计算出来的宽度 = 原有宽度 + 剩余控件所占百分比
举例解释：
例1：

<LinearLayout xmlns:android="http://schemas.android.com]]></description><category></category></item><item><title><![CDATA[屏幕适配全攻略（一）--重要概念]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51456032</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51456032</guid><author>qq_28107395</author><pubDate>Thu, 19 May 2016 18:45:52 +0800</pubDate><description><![CDATA[一、重要概念
（1）、屏幕尺寸
定义：屏幕对角线的长度
单位：英寸 1英寸 = 2.54厘米
（2）、屏幕分辨率
定义：在横纵方向上的像素点
单位：px   1px = 1个像素点
一般以纵向像素*横向像素，如1920*1080
（3）、屏幕像素密度
定义：每英寸上的像素点数
单位：dpi，即"dot per inch"的缩写
屏幕像素密度与屏幕尺寸和屏幕分辨率有关
例：屏]]></description><category></category></item><item><title><![CDATA[Android studio butterknife简单使用]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51243006</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51243006</guid><author>qq_28107395</author><pubDate>Mon, 25 Apr 2016 16:15:11 +0800</pubDate><description><![CDATA[一、使用条件
（1）、Android studio下载插件并重启

插件名字：ButterKnife
 Zelezny

（2）、项目中添加依赖包

dependencies {
    compile 'com.jakewharton:butterknife:7.0.1'
}
二、使用方法


要点：
（1）、必须在布局的名字上点击右键
（2）、如果想要添加点击事件，]]></description><category></category></item><item><title><![CDATA[Android快速开发系列 10个常用工具类]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51219544</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51219544</guid><author>qq_28107395</author><pubDate>Fri, 22 Apr 2016 13:52:28 +0800</pubDate><description><![CDATA[转载请标明出处：http://blog.youkuaiyun.com/lmj623565791/article/details/38965311，本文出自【张鸿洋的博客】

打开大家手上的项目，基本都会有一大批的辅助类，今天特此整理出10个基本每个项目中都会使用的工具类，用于快速开发~~

在此感谢群里给我发项目中工具类的兄弟/姐妹~

1、日志工具类L.java





[java]]></description><category></category></item><item><title><![CDATA[URL 和 URL的区别]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51218591</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51218591</guid><author>qq_28107395</author><pubDate>Fri, 22 Apr 2016 11:24:45 +0800</pubDate><description><![CDATA[此文来自知乎：点击打开链接

从鄙人程序员的角度理解，URI属于URL更低层次的抽象，一种字符串文本标准。

就是说，URI属于父类，而URL属于URI的子类。URL是URI的一个子集。
在《HTTP权威指南》一书中，对于URI的定义是：统一资源标识符；对于URL的定义是：统一资源定位符。
二者的区别在于，URI表示请求服务器的路径，定义这么一个资源。而URL同时说明要如何访问这个资源]]></description><category></category></item><item><title><![CDATA[Android 通知栏Notification的整合 全面学习 （一个DEMO让你完全了解它）]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51162371</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51162371</guid><author>qq_28107395</author><pubDate>Fri, 15 Apr 2016 15:56:46 +0800</pubDate><description><![CDATA[在android的应用层中，涉及到很多应用框架，例如：Service框架，Activity管理机制，Broadcast机制，对话框框架，标题栏框架，状态栏框架，通知机制，ActionBar框架等等。

下面就来说说经常会使用到通知机制中的通知栏框架（Notificaiton），它适用于交互事件的通知。它是位于顶层可以展开的通知列表。它会时不时的提醒你什么软件该更新了，什么人发你微信消息了等。]]></description><category></category></item><item><title><![CDATA[Android滑动（三）——scrollTo与scrollBy]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51154344</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51154344</guid><author>qq_28107395</author><pubDate>Thu, 14 Apr 2016 20:08:40 +0800</pubDate><description><![CDATA[一、scrollTo与scrollBy简介
scrollTo(x,y):表示移动到一个具体的坐标点(x,y)
scrollBy(dx,dy):表示移动的增量为dx、dy
int offSetX = x - lastX;
int offSetY = y- lastY;
scrollBy(offSetX,offSetY);具体实现请参照Android滑动（二）——滑动方法之layout() 及相]]></description><category></category></item><item><title><![CDATA[Android滑动（二）——滑动方法之layout() 及相应封装API]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51154090</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51154090</guid><author>qq_28107395</author><pubDate>Thu, 14 Apr 2016 19:09:50 +0800</pubDate><description><![CDATA[前边我们学了Android坐标系和触控事件，滑动效果原理：通过滑动时的偏移量，来修改View的坐标。
一、layout方法
（1）自定义View的代码：
package com.datong.dragview;

import android.content.Context;
import android.util.AttributeSet;
import android.view.Moti]]></description><category></category></item><item><title><![CDATA[Android string-array 的使用]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51153331</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51153331</guid><author>qq_28107395</author><pubDate>Thu, 14 Apr 2016 17:26:11 +0800</pubDate><description><![CDATA[在实际开发中，当数据为固定数据、数据量不是很大、希望很方便的获取到这些数据的时候，可以考虑使用这种低成本的方式来获取预装数据。将想要保存的数据存储到 values 文件夹下的 arrays.xml 文件中，格式如下：


    
　　        北京
　　        天津
　　        太原
　　        西安
　　        郑州
　　    

然后在应用中通过以]]></description><category></category></item><item><title><![CDATA[Android 滑动（一）窗口坐标系和触摸控件——MotionEvent]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51144833</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51144833</guid><author>qq_28107395</author><pubDate>Thu, 14 Apr 2016 10:24:40 +0800</pubDate><description><![CDATA[一、坐标系
（1）、Android坐标系]]></description><category></category></item><item><title><![CDATA[ListView（二）——常用]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51145918</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51145918</guid><author>qq_28107395</author><pubDate>Wed, 13 Apr 2016 20:09:15 +0800</pubDate><description><![CDATA[一、设置项目将分割线
        android:divider="@android:color/darker_gray"
        android:dividerHeight="10dp"

divider不仅可以设置一个颜色，同样可以设置为图片资源。

        android:divider="@null"分割线设置为透明


二、隐藏ListView的滚动条]]></description><category></category></item><item><title><![CDATA[ListView（一）——优化技巧ViewHolder]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51145783</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51145783</guid><author>qq_28107395</author><pubDate>Wed, 13 Apr 2016 18:59:19 +0800</pubDate><description><![CDATA[ViewHolder模式是提高ListView效率的一个重要方法。ViewHolder模式充分利用了ListView的视图缓存机制，避免了每次在调用getView的时候去
通过findViewById（）实例化控件。据测试ViewHolder将提高50%以上的效率。使用ViewHolder模式来优化ListView非常简单，只需要在自定义Adapter中定义一个内部类
ViewHolder，并]]></description><category></category></item><item><title><![CDATA[使用Fragment实现ViewPager滑动]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51123210</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51123210</guid><author>qq_28107395</author><pubDate>Mon, 11 Apr 2016 17:04:12 +0800</pubDate><description><![CDATA[前言：上篇中我们讲解了如何快速实现了一个滑动页面，但问题在于，PageAdapter必须要重写的四个函数，它们都各有什么意义，在上节的函数内部为什么要这么实现，下面我们就结合android的API说明，详细讲解一下。





本篇效果图：

在第一个页面加一个Btn                                          第一页面向第二页面滑动

 ]]></description><category></category></item><item><title><![CDATA[Android：res之selector背景选择器]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51122119</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51122119</guid><author>qq_28107395</author><pubDate>Mon, 11 Apr 2016 15:29:04 +0800</pubDate><description><![CDATA[selector根据不同的选定状态来定义不同的现实效果

常用属性：

android:state_selected--------选中
android:state_focused--------获得焦点
android:state_pressed--------点击
android:state_enabled--------设置是否响应事件

=================]]></description><category></category></item><item><title><![CDATA[onItemClick监听器四个arg参数]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51120350</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51120350</guid><author>qq_28107395</author><pubDate>Mon, 11 Apr 2016 11:36:56 +0800</pubDate><description><![CDATA[一、原型


public void onItemClick(AdapterView arg0, View view, int position,long arg3)
or
public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3)

二、详解


举个例子你会理解的更快：X, Y两个lis]]></description><category></category></item><item><title><![CDATA[android popupWindow使用]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51077208</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51077208</guid><author>qq_28107395</author><pubDate>Wed, 06 Apr 2016 18:19:04 +0800</pubDate><description><![CDATA[一、activity_main.xml

<RelativeLayout
    android:id="@+id/main"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match]]></description><category></category></item><item><title><![CDATA[android onInterceptTouchEvent()和onTouchEvent()的总结]]></title><link>https://blog.youkuaiyun.com/qq_28107395/article/details/51075317</link><guid>https://blog.youkuaiyun.com/qq_28107395/article/details/51075317</guid><author>qq_28107395</author><pubDate>Wed, 06 Apr 2016 16:21:33 +0800</pubDate><description><![CDATA[onInterceptTouchEvent：
故名思议：拦截触摸事件 intercept 拦截，截断 TouchEvent 触摸事件
onInterceptTouchEvent是ViewGroup里定义的，View里面没有。
onInterceptTouchEvent是否拦截主要看返回值，返回true拦截，返回false（super.onInterceptTouchEvent(ev)）不拦截]]></description><category></category></item></channel></rss>