<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[wp21456的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wp21456</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wp21456]]></copyright><item><title><![CDATA[相对布局管理器RelativeLayout]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84598975</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84598975</guid><author>wp21456</author><pubDate>Wed, 14 May 2014 14:45:51 +0800</pubDate><description><![CDATA[
相对布局管理器是基于一个参考点而言的布局管理器。就像Web开发中的相对路径的概念，是基于一定的参考点而创建的。在Android中的相对布局管理器就是在一个参考点的四周（上，下，左，右）布局的管理器。     下面来看一下RelativeLayout的文档：      它的继承结构为： java.lang.Object    ↳ android.view.View    ↳ android.vie...]]></description><category></category></item><item><title><![CDATA[关于开源项目android--Imagedownloader的学习笔记]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84598960</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84598960</guid><author>wp21456</author><pubDate>Wed, 14 May 2014 14:21:39 +0800</pubDate><description><![CDATA[
一个开源项目，关于图像异步缓存下载的简单apps，网上有相应的代码，但是没有任何说明和讲解（英文blog中有，讲了一下框架），那就自己研究吧。
　　主要对ImageDownloader分析：
　　Bitmap downloadBitmap（String url）；//从网站下载一幅图片，比较简单
　　　　　　HttpClient：
　　　　　　AndroidHttpClient：Apac...]]></description><category></category></item><item><title><![CDATA[Android Activity 生命周期的透彻理解]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84598738</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84598738</guid><author>wp21456</author><pubDate>Tue, 13 May 2014 17:01:02 +0800</pubDate><description><![CDATA[
首先看看android developers 网上的activity的生命周期图：      activity启动的时候：onCreate ---&amp;gt; onStart ---&amp;gt; onResume 这个过程不用多说，大家都知道。这里主要讲讲: 何时onPause, 何时onStop，何时onDestory； 以及恢复的时候，何时onRestart，何时onResume。为了方便说明这里把...]]></description><category></category></item><item><title><![CDATA[Adapter的getView方法详解]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84598668</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84598668</guid><author>wp21456</author><pubDate>Tue, 13 May 2014 14:09:23 +0800</pubDate><description><![CDATA[
BaseAdapter就Android应用程序中经常用到的基础数据适配器，它的主要用途是将一组数据传到像ListView、Spinner、Gallery及GridView等UI显示组件，它是继承自接口类Adapter，我们经常使用的ListView 的adapter，即SimpleAdapter，是继承自BaseAdapter的，BaseAdapter是一个基类，没有实现绑定数据的功能，Simp...]]></description><category></category></item><item><title><![CDATA[ android源码解析--Message]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84597984</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84597984</guid><author>wp21456</author><pubDate>Sat, 10 May 2014 11:13:54 +0800</pubDate><description><![CDATA[
看下类定义：
 



[java] view plaincopy




Defines a message containing a description and arbitrary data object that can be sent to a Handler. This object contains two extra int fields and an extr...]]></description><category></category></item><item><title><![CDATA[android源码解析--Handler]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84597979</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84597979</guid><author>wp21456</author><pubDate>Sat, 10 May 2014 11:12:54 +0800</pubDate><description><![CDATA[
Handler是用于发送和处理消息和一个线程的MessageQueue相关联的Runable对象。每个Handler实例关联到一个单一线程和线程的messagequeue。当您创建一个Handler,从你创建它的时候开始，它就绑定到创建它的线程以及对应的消息队列，handler将发送消息到消息队列，并处理从消息队列中取出的消息。
Handler的主要用途有两个：(1)、在将来的某个时刻执行消息...]]></description><category></category></item><item><title><![CDATA[Android AsyncTask完全解析，带你从源码的角度彻底理解]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84596401</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84596401</guid><author>wp21456</author><pubDate>Sun, 04 May 2014 22:26:44 +0800</pubDate><description><![CDATA[
我们都知道，Android UI是线程不安全的，如果想要在子线程里进行UI操作，就需要借助Android的异步消息处理机制。之前我也写过了一篇文章从源码层面分析了Android的异步消息处理机制，感兴趣的朋友可以参考Android Handler、Message完全解析，带你从源码的角度彻底理解 。
不过为了更加方便我们在子线程中更新UI元素，Android从1.5版本就引入了一个AsyncT...]]></description><category></category></item><item><title><![CDATA[Android异步消息处理机制完全解析]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84595934</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84595934</guid><author>wp21456</author><pubDate>Fri, 02 May 2014 13:05:37 +0800</pubDate><description><![CDATA[
转载请注明出处：http://blog.youkuaiyun.com/guolin_blog/article/details/9991569
之前也是由于周末通宵看TI3比赛，一直没找到时间写博客，导致已经有好久没更新了。惭愧！后面还会恢复进度，尽量保证每周都写吧。这里也是先恭喜一下来自瑞典的Alliance战队夺得了TI3的冠军，希望明年中国战队能够虎起！
开始进入正题，我们都知道，Android U...]]></description><category></category></item><item><title><![CDATA[ Android事件分发机制完全解析，带你从源码的角度彻底理解(上)]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84595827</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84595827</guid><author>wp21456</author><pubDate>Thu, 01 May 2014 15:51:35 +0800</pubDate><description><![CDATA[
比如说你当前有一个非常简单的项目，只有一个Activity，并且Activity中只有一个按钮。你可能已经知道，如果想要给这个按钮注册一个点击事件，只需要调用：



[java] view plaincopy




button.setOnClickListener(new OnClickListener() {  
    @Override  
    public v...]]></description><category></category></item><item><title><![CDATA[Android下拉刷新完全解析，教你如何一分钟实现下拉刷新功能]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84595824</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84595824</guid><author>wp21456</author><pubDate>Thu, 01 May 2014 15:30:03 +0800</pubDate><description><![CDATA[
最近项目中需要用到ListView下拉刷新的功能，一开始想图省事，在网上直接找一个现成的，可是尝试了网上多个版本的下拉刷新之后发现效果都不怎么理想。有些是因为功能不完整或有Bug，有些是因为使用起来太复杂，十全十美的还真没找到。因此我也是放弃了在网上找现成代码的想法，自己花功夫编写了一种非常简单的下拉刷新实现方案，现在拿出来和大家分享一下。相信在阅读完本篇文章之后，大家都可以在自己的项目中一分钟...]]></description><category></category></item><item><title><![CDATA[标签页切换]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84595818</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84595818</guid><author>wp21456</author><pubDate>Thu, 01 May 2014 14:53:10 +0800</pubDate><description><![CDATA[
现在Fragment的应用真的是越来越广泛了，之前Android在3.0版本加入Fragment的时候，主要是为了解决Android Pad屏幕比较大，空间不能充分利用的问题，但现在即使只是在手机上，也有很多的场景可以运用到Fragment了，今天我们就来学习其中一个特别棒的应用技巧。
很多手机应用都会有一个非常类似的功能，即屏幕的下方显示一行Tab标签选项，点击不同的标签就可以切换到不同的界...]]></description><category></category></item><item><title><![CDATA[Android官方提供的支持不同屏幕大小的全部方法]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84595817</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84595817</guid><author>wp21456</author><pubDate>Thu, 01 May 2014 14:31:05 +0800</pubDate><description><![CDATA[
本文将告诉你如何让你的应用程序支持各种不同屏幕大小，主要通过以下几种办法：
 

让你的布局能充分的自适应屏幕
根据屏幕的配置来加载合适的UI布局
确保正确的布局应用在正确的设备屏幕上
提供可以根据屏幕大小自动伸缩的图片


使用 &quot;wrap_content&quot; 和 &quot;match_parent&quot;
 为了确保你的布局能够自适应各种不同屏幕大小，你应该在布局的视图中使用&quot;wrap_con...]]></description><category></category></item><item><title><![CDATA[android：layout_weight属性详解]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84595816</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84595816</guid><author>wp21456</author><pubDate>Thu, 01 May 2014 13:42:04 +0800</pubDate><description><![CDATA[
在android开发中LinearLayout很常用，LinearLayout的内控件的android:layout_weight在某些场景显得非常重要，比如我们需要按比例显示。android并没用提供table这样的控件，虽然有TableLayout，但是它并非是我们想象中的像html里面的table那么好用，我们常用ListView实现table的效果，但是列对齐确比较麻烦，现在用Line...]]></description><category></category></item><item><title><![CDATA[简单工厂模式及实例]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84481074</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84481074</guid><author>wp21456</author><pubDate>Wed, 18 Sep 2013 16:45:13 +0800</pubDate><description><![CDATA[
简单工厂模式及实例

前言工大有许多同学是做java的，大家都知道java最大的优点是它的完全OO化和它在多年的发展过程中吸收和总结了许多先进的框架与模式，其中工厂模式就是最常用的模式之一。下面我想将我在学习和实践过程中对工厂模式的认识与了解介绍给大家。由于笔者能力限制，在实践中也没参与过什么大的项目，笔者参与过的项目用到的工厂模式主要是简单工厂模式（Simple Factory）和工厂方法模...]]></description><category></category></item><item><title><![CDATA[ java内部类总结 ]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84478010</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84478010</guid><author>wp21456</author><pubDate>Mon, 09 Sep 2013 22:49:28 +0800</pubDate><description><![CDATA[
* 定义:在一个外部类的内部再定义一个类。内部类作为外部类的一个成员，并且依附于外部类而存在的
内部类可为静态和非静态。可以用public,protected和private修饰。而外部类只能使用public和缺省的包访问权限。
* 分为以下几类：
成员内部类、局部内部类、静态内部类、匿名内部类。
* 使用内部类的原因：
1）典型的情况是，内部类继承自某个类或实现某个接口，内部类的代码...]]></description><category></category></item><item><title><![CDATA[ jsp+ajax实例]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84387366</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84387366</guid><author>wp21456</author><pubDate>Wed, 30 Jan 2013 14:54:50 +0800</pubDate><description><![CDATA[
下面介绍JSP前台表单内容通过Ajax异步提交到后台Servlet进行校验（校验方式多种，包括提取数据库信息，校验用户名是否重复等），异步在JSP表单页面显示校验结果信息的基本过程。 一、说明：        1.由于本文只限于介绍JSP+Servlet+Ajax运用的基本流程，重点不在于后台数据库的访问和校验内容，因此省略Servlet对数据库的访问。 二、基本流程：       1. JSP...]]></description><category></category></item><item><title><![CDATA[寻找第2小元素]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84384030</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84384030</guid><author>wp21456</author><pubDate>Tue, 22 Jan 2013 10:52:23 +0800</pubDate><description><![CDATA[
分析: 看见题目中有lg(n) 项,首先应该想到的是分治法,算法的思路如下:(为简单起见,不考虑取整的问题)
将 n 个元素分成 n/2 对.每一对之间互相比较.这样一共比较了 n/2 次.然后将每一对的较小元素放在 S[1...n/2] 数组中,较大的元素对应的放在 B[1...n/2]中.显然最小的元素肯定在数组S中,那么第2小的元素(设代号为X)  是否也在 S 中呢?
首先,假设第...]]></description><category></category></item><item><title><![CDATA[水壶(Kettle)问题]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84383850</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84383850</guid><author>wp21456</author><pubDate>Mon, 21 Jan 2013 18:36:01 +0800</pubDate><description><![CDATA[
8-4  水壶
   假设给定了n个红色的水壶和n个蓝色的水壶，它们的形状和尺寸都不相同。所有红色水壶中所盛水的量都不一样，蓝色水壶也是一样。此外，对于每个红色的水壶，都有一个对应的蓝色水壶，两者所盛的水量是一样的。反之亦然。
  你的任务是将所盛水量一样的红色水壶和蓝色水壶找出来。为了达到这一目的，可以执行如下操作:挑选出一对水壶，其中一个是红色的，另一个是蓝色的：将红色水壶中倒满水；再将...]]></description><category></category></item><item><title><![CDATA[比较排序的平均情况下界  ]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84383780</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84383780</guid><author>wp21456</author><pubDate>Mon, 21 Jan 2013 16:47:41 +0800</pubDate><description><![CDATA[
在本问题中，我们来证明给定n个不同的输入元素，对于任何确定或随机的比较排序算法，其期望运行时间都有下界Ω(nlgn)。首先来分析一个确定的比较排序算法A，其决策树为TA。假设A的输入的每一种排列都是等可能的。
a) 假设TA的每个叶结点都标以在给定的随机输入下到达该结点的概率。证明：恰有n!个叶结点标有1/n!，其他的标有0。
对于一个基于比较的排序算法A，不存在两个输入序列使之到达决策树的...]]></description><category></category></item><item><title><![CDATA[第六章堆排序之“对d叉堆的分析”（思考题6-2）]]></title><link>https://blog.youkuaiyun.com/wp21456/article/details/84382748</link><guid>https://blog.youkuaiyun.com/wp21456/article/details/84382748</guid><author>wp21456</author><pubDate>Thu, 17 Jan 2013 20:22:41 +0800</pubDate><description><![CDATA[
d叉堆在数组中如何表示：
（1）若某个子节点索引为i，则它的父节点的索引为（i-2）/d+1，向下取整。
（2）若某个父节点索引为i，则它的第j个子节点的索引为d*(i-1)+j+1。
下面的程序是用插入法建立d叉最大堆，并显示了一次去掉和返回堆顶元素后剩余堆的情况。
其中 “调整d叉堆” 的时间复杂度都为O(dlogd(n))，d为底哦。（纵向进行logd(n)（即深度）次，每次再横向...]]></description><category></category></item></channel></rss>