<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[bug的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/oAiTan</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; oAiTan]]></copyright><item><title><![CDATA[热修复Tinker简单使用]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/54412677</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/54412677</guid><author>oAiTan</author><pubDate>Fri, 13 Jan 2017 23:13:09 +0800</pubDate><description><![CDATA[官方说明Tinker是微信官方的Android热补丁解决方案，它支持动态下发代码、So库以及资源，让应用能够在不需要重新安装的情况下实现更新。当然，你也可以使用Tinker来更新你的插件。github地址：https://github.com/Tencent/tinker我的Demo地址：https://github.com/7449/AndroidDevelop/tree/master/Tinke]]></description><category></category></item><item><title><![CDATA[Jsoup使用~抓取豆瓣妹子图]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/54412670</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/54412670</guid><author>oAiTan</author><pubDate>Fri, 13 Jan 2017 23:11:01 +0800</pubDate><description><![CDATA[简介jsoup 是一款Java 的HTML解析器，可直接解析某个URL地址、HTML文本内容。 
它提供了一套非常省力的API，可通过DOM，CSS以及类似于jQuery的操作方法来取出和操作数据。代码示例https://github.com/7449/AndroidDevelop/tree/master/JsoupSimple
  Jsoup对js动态加载抓取比较困难，如果想抓取请使用其他的工具，]]></description><category></category></item><item><title><![CDATA[greendao3.x 以及操作外部数据库]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/54412660</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/54412660</guid><author>oAiTan</author><pubDate>Fri, 13 Jan 2017 23:07:54 +0800</pubDate><description><![CDATA[简介greenDao是一个使用于android的ORM框架,现在主流的ORM框架有OrmLite,SugarORM,Active Android,Realm以及GreenDAO.greenDao的性能远远高于同类的ORM框架,具体的测试结果官网有。示例代码https://github.com/7449/AndroidDevelop/tree/master/greenDao3.0示例代码https:/]]></description><category></category></item><item><title><![CDATA[XAdapter:支持下拉刷新加载和添加多个header和footer的RecyclerViewAdapter]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/54406170</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/54406170</guid><author>oAiTan</author><pubDate>Fri, 13 Jan 2017 10:20:24 +0800</pubDate><description><![CDATA[github地址：XAdapterScreenshotshttps://github.com/7449/XAdapter/blob/master/xadapter.gifgradle
  compile ‘com.xadapter:xadapter:0.0.6’
更新日志0.0.6 : 修复不能上拉加载的bug
完整示例    recyclerView.setAdapter(]]></description><category></category></item><item><title><![CDATA[支持图片无限轮播的BannerLayout，小圆点，提示栏，页码统统满足]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/54406120</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/54406120</guid><author>oAiTan</author><pubDate>Fri, 13 Jan 2017 10:14:50 +0800</pubDate><description><![CDATA[支持功能
可自定义小圆点,title,提示栏位置，支持自定义selector选择器
可自定义是否自动轮播，轮播时间
支持List 、数组 两种数据格式
支持点击事件以及轮播速度及viewPager滑动切换速度
支持是否显示小圆点，title,或者整个提示栏
支持加载时和加载失败时显示自定义图片
支持选择暂停 恢复 轮播状态
支持自定义提示栏（不建议使用）
支持动画以及垂直滚动
使用效果基础使用方法]]></description><category></category></item><item><title><![CDATA[博客已经迁移到 https://7449.github.io/]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/52936760</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/52936760</guid><author>oAiTan</author><pubDate>Wed, 26 Oct 2016 17:59:00 +0800</pubDate><description><![CDATA[博客已经迁移到 https://7449.github.io/  优快云 不再更新，以后的
博客都会在github更新，
并且所有的Demo 都迁移到github，有兴趣者可以去我的github瞅
瞅 https://github.com/7449]]></description><category></category></item><item><title><![CDATA[宽度固定，高度自适应的imageview]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/52215555</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/52215555</guid><author>oAiTan</author><pubDate>Mon, 15 Aug 2016 22:31:31 +0800</pubDate><description><![CDATA[本来再xml里面定义也可以实现这种方式，不过我还是比较喜欢用代码的方式去实现public class MImageView extends ImageView {

    public MImageView(Context context) {
        super(context);
    }

    public MImageView(Context context, Attrib]]></description><category></category></item><item><title><![CDATA[JSP基础总结]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51803125</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51803125</guid><author>oAiTan</author><pubDate>Fri, 01 Jul 2016 17:13:27 +0800</pubDate><description><![CDATA[JSP基本构成
	xxx.jsp 一个jsp页面可以包括指令标识，HTML，JavaScript，嵌入的Java代码，注释和JSP动作标识等内容。但是并不是JSP页面必需的
	例：
		
			
			
			
				
					This is Title
				
				
					百度
					<%
						/***
						 * JAVA代码
						 */
						D]]></description><category></category></item><item><title><![CDATA[DOM总结]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51794406</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51794406</guid><author>oAiTan</author><pubDate>Fri, 01 Jul 2016 00:01:27 +0800</pubDate><description><![CDATA[DOM技术
		Document Object Model 
	1. DOM的分层结构
											document(对象)
											
									   				
													 				
									文本						
	
		例：
				
						
						
						title
						
					
						body
				]]></description><category></category></item><item><title><![CDATA[JavaScript基础总结]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51794399</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51794399</guid><author>oAiTan</author><pubDate>Fri, 01 Jul 2016 00:00:20 +0800</pubDate><description><![CDATA[客户端交互的JavaScript
		JavaScript可以直接嵌入在HTTP页面中。把静态页面转成支持用户交互并响应应用时间的动态页面。
	1. JavaScript的语言基础
		(1) 基本语法
				区分大小写，"password"和"passWord"是两个不同的变量。
				每行结尾可以加分号表示语句结束，也可以不加，但是为了规范建议加上。
				变量是弱类型的，因为只使用va]]></description><category></category></item><item><title><![CDATA[CSS基础总结]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51794390</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51794390</guid><author>oAiTan</author><pubDate>Thu, 30 Jun 2016 23:59:06 +0800</pubDate><description><![CDATA[美化页面的CSS样式表
		CSS 是为了弥补HTML在显示属性设定上的不足而定制的一套扩展样式标准  全称"Cascading Style Sheet"
		
	1. 样式表的定义和引用
		(1) 行内样式
				直接定义在HTML标记之内。通过style实现，灵活性不强
				例: test
		(2) 内嵌式
				在页面使用标记将CSS样式包含在页面中
				例：
					
	]]></description><category></category></item><item><title><![CDATA[html基础总结]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51794327</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51794327</guid><author>oAiTan</author><pubDate>Thu, 30 Jun 2016 23:47:47 +0800</pubDate><description><![CDATA[指定字符编码

文字排版标记
	1.文字和特殊符号
		对于一些特殊符号和空格不能直接输入，必须通过一个以"&"开头，";"结尾的实体名称来代替
	2.段落标记
		以标记开头，以标记结束，段落标记在段前和段后各添加一个空行，而定义在段落标记中的内容不受该标记的影响
	3.换行标记
		
	4.标题标记
		 -->  数字越小级别越高字体越大
		例：居中 
		align有多种属性，cente]]></description><category></category></item><item><title><![CDATA[模仿微信通讯录侧边栏快速索引]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51636562</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51636562</guid><author>oAiTan</author><pubDate>Sat, 11 Jun 2016 15:02:38 +0800</pubDate><description><![CDATA[先看下效果图：


还是通过自定义view去实现这个快速索引功能,可以自己定义侧边栏的内容,不仅仅是A—Z  


view也是比较简单的,而且注释较详细
public class SlideView extends View {

    private static final String TAG = "SlideView";

    private String[] mar]]></description><category></category></item><item><title><![CDATA[自定义view下载进度条展示]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51590981</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51590981</guid><author>oAiTan</author><pubDate>Sun, 05 Jun 2016 20:01:41 +0800</pubDate><description><![CDATA[自定义视图的实现方式大概有三种，组合控件，继承控件和自绘控件
组合控件：使用时只用系统原生的各个控件就行了,例如实际开发中经常会自己定义一个titlebar，需要一个返回键和title，这样的就是组合控件
继承控件：继承系统的原生控件，在他的基础上再添加一些新功能，例如登陆时的验证码60秒倒计时，我们就可以去自定义一个button去实现这个功能
自绘控件：页面上展示的东西都是通过代码自己去绘]]></description><category></category></item><item><title><![CDATA[mvp模式在android中使用]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51549972</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51549972</guid><author>oAiTan</author><pubDate>Tue, 31 May 2016 23:38:28 +0800</pubDate><description><![CDATA[前言：
相信做android开发的都听过mvc和mvp，有的也听过mvvm,不过mvvm现在还不太成熟，而mvc是J2EE开发中使用的，现在使用也用的mvp模式来构建自己的项目,
mvc开发如果项目越来越复杂的话,项目中的actiivty或者fragment代码量也越来越多,这样项目的后期维护也越来越麻烦,在网上可以搜查一下,你会发现现在最适合android开发的构建模式非MVP莫属。

]]></description><category></category></item><item><title><![CDATA[DataBinding简单操作]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51470166</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51470166</guid><author>oAiTan</author><pubDate>Sat, 21 May 2016 14:49:41 +0800</pubDate><description><![CDATA[目前已经支持双向绑定,可以试着写一下MVVM了




////////////////////////////////////////////////////////////////////////////
Databinding 是google官方推出的一个数据绑定框架,使用这个可以不用再写finViewById了,而且xml以前只能写布局文件,用了之后xml文件还可以进行更多的操]]></description><category></category></item><item><title><![CDATA[greenDao简单的增删改查]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51464743</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51464743</guid><author>oAiTan</author><pubDate>Fri, 20 May 2016 22:48:53 +0800</pubDate><description><![CDATA[greenDao是一个使用于android的ORM框架,现在主流的ORM框架有OrmLite,SugarORM,Active Android,Realm以及GreenDAO.
greenDao的性能远远高于同类的ORM框架,具体的测试结果官网有。
今天简单的用greenDao实现了数据库的增删改查,确实比以前自己写SQL语句舒服多了,不用再考虑SQL语句很方便。


想使用greenDa]]></description><category></category></item><item><title><![CDATA[RecyclerView检测是否滑动到底部]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51388358</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51388358</guid><author>oAiTan</author><pubDate>Thu, 12 May 2016 23:09:05 +0800</pubDate><description><![CDATA[上一个博客http://blog.youkuaiyun.com/oaitan/article/details/51165894
用到了recyclerview滑动到底部,
用的是LinearLayoutManager这个属性,当用到瀑布流的时候这个方法肯定不行了
用StaggeredGridLayoutManager这个属性因为item高低不一样,以前的老方法肯定就不行了,现在通过自定义recycler]]></description><category></category></item><item><title><![CDATA[Fragment和viewPager拒绝预加载]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51388139</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51388139</guid><author>oAiTan</author><pubDate>Thu, 12 May 2016 22:39:43 +0800</pubDate><description><![CDATA[在项目中使用Fragment和viewPager是很常见的事情,但是细心的人就会发现如果fragment有多个页面的话,当你还没切换到第二个页面的时候viewpager就已经把第二个页面在后台加载了,这个是viewpager的特性。
举个简单的例子：你在页面加个progressBar,让他显示一秒再消失,但是你打开App,然后等两秒,再切换到第二个页面,这个时候就会发现progressbar早已]]></description><category></category></item><item><title><![CDATA[Demo 基于 Retrofit_RxJava, 并且采用了 MVP 模式]]></title><link>https://blog.youkuaiyun.com/oAiTan/article/details/51316824</link><guid>https://blog.youkuaiyun.com/oAiTan/article/details/51316824</guid><author>oAiTan</author><pubDate>Wed, 04 May 2016 17:45:58 +0800</pubDate><description><![CDATA[git  地址：Retrofit_RxJava_MVP]]></description><category></category></item></channel></rss>