<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xueAnother的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/xueAnother</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xueAnother]]></copyright><item><title><![CDATA[在Android Studio中使用Git]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/78873238</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/78873238</guid><author>xueAnother</author><pubDate>Fri, 22 Dec 2017 14:50:45 +0800</pubDate><description><![CDATA[简单的git命令里我们介绍了常用的git命令，这里介绍如何在Android Studio中使用Git。 
1、首先在项目所在目录中打开Git,即Git Bash Here，并通过$ git init
建立本地仓库。 
2、建立远程仓库并与本地仓库相关联，举例如下$  git remote add origin https://github.com/xxx/xxxx.git
3、配置Git路径，Fil]]></description><category></category></item><item><title><![CDATA[简单的git命令]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/78865497</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/78865497</guid><author>xueAnother</author><pubDate>Thu, 21 Dec 2017 17:52:31 +0800</pubDate><description><![CDATA[1、设置用户名，邮箱



git config --global user.name "name"
git config --global user.email "xxxx@xx.com"

2、创建目录，并把该目录变成可以管理的仓库



 cd D:
 cd xxuxe
 mkdir learngit
 git init


3、 把工作区的readme.txt添加进仓库，或者将readme]]></description><category></category></item><item><title><![CDATA[TargetAPI和SuppressLint]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/78854692</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/78854692</guid><author>xueAnother</author><pubDate>Wed, 20 Dec 2017 16:29:17 +0800</pubDate><description><![CDATA[TargetAPI作用
@TargetApi(版本号)
@TargetApi(版本号) 是一个注解，用来兼容不同版本的开发。他指定了下面的一个方法与某个版本对应（大于minSdk），忽略指定的minSdk。例如高版本API需要实现某种功能，而低版本则不需要，可以这样写， @TargetApi(23)
    private void getPersimmions() {
        if (Bu]]></description><category></category></item><item><title><![CDATA[多线程同步的一些方法(转)]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/60883198</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/60883198</guid><author>xueAnother</author><pubDate>Wed, 08 Mar 2017 21:48:55 +0800</pubDate><description><![CDATA[进程中线程同步的四种常用方式： 
1、 临界区（CCriticalSection） 
当多个线程访问一个独占性共享资源时，可以使用临界区对象。拥有临界区的线程可以访问被保护起来的资源或代码段，其他线程若想访问，则被挂起，直到拥有临界区的线程放弃临界区为止。具体应用方式： 
1、 定义临界区对象CcriticalSection g_CriticalSection; 
2、 在访问共享资源（代码或变量）]]></description><category></category></item><item><title><![CDATA[os的进程调度（读书笔记）]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/60766295</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/60766295</guid><author>xueAnother</author><pubDate>Tue, 07 Mar 2017 15:47:13 +0800</pubDate><description><![CDATA[在多进程、多线程并发的环境里，从概念上看，有多个进程或者多个线程在同时执行，具体到单个CPU级别，实际上任何时刻只能有一个进程或者线程处于执行状态；因此OS需要决定哪个进程执行，哪些进程等待，也就是进程的调度。 
一、调度的目标 
1、首先要区分程序使用CPU的三种模式：IO密集型、计算密集型和平衡型。对于IO密集型程序来说，响应时间非常重要；对于CPU密集型来说，CPU的周转时间就比较重要；对于平]]></description><category></category></item><item><title><![CDATA[新浪SDK集成]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/54091296</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/54091296</guid><author>xueAnother</author><pubDate>Thu, 05 Jan 2017 11:31:18 +0800</pubDate><description><![CDATA[1.新建自己的APP，并导入sdk,也就是 
2.将应用安装到手机 
这里我出现一个错误 Error:Error converting bytecode to dex:
Cause: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/Accessibilit]]></description><category></category></item><item><title><![CDATA[UrlConnection连接和Socket连接的区别]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53836127</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53836127</guid><author>xueAnother</author><pubDate>Fri, 23 Dec 2016 10:17:05 +0800</pubDate><description><![CDATA[1.Socket 的连接是有状态的，一旦两边连接上了，将一直保持连接，除非人为断开。一般用于游戏，需要持续的网络畅通2.URLConnection和HttpURLConnection使用的都是java.net中的类，属于标准的java接口。 
HttpURLConnection继承自URLConnection,差别在与HttpURLConnection仅仅针对Http连接。 
HttpURLConn]]></description><category></category></item><item><title><![CDATA[接口传递数据]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53521817</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53521817</guid><author>xueAnother</author><pubDate>Thu, 08 Dec 2016 17:40:04 +0800</pubDate><description><![CDATA[我们定义一个Activity A和一个类B和一个接口I，通过接口类B向Activity A传递数据；public class B{
public interface ii;
public int j;
 public B(){}
 public void setOnListener(I ii ){
     this.ii=ii;
 } ii.fun(int j);
 public interfac]]></description><category></category></item><item><title><![CDATA[canvas.save() canvas.restore() 作用]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53405731</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53405731</guid><author>xueAnother</author><pubDate>Wed, 30 Nov 2016 11:16:41 +0800</pubDate><description><![CDATA[暂时先看此博客,待以后再研究 
这里canvas.save();和canvas.restore();是两个相互匹配出现的，作用是用来保存画布的状态和取出保存的状态的。这里稍微解释一下， 
  当我们对画布进行旋转，缩放，平移等操作的时候其实我们是想对特定的元素进行操作，比如图片，一个矩形等，但是当你用canvas的方法来进行这些操作的时候，其实是对整个画布进行了操作，那么之后在画布上的元素都会受到影]]></description><category></category></item><item><title><![CDATA[View绘制流程]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53404795</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53404795</guid><author>xueAnother</author><pubDate>Wed, 30 Nov 2016 10:08:26 +0800</pubDate><description><![CDATA[一、measure()过程 
  measure函数原型为 View.java 该函数不能被重载public final void measure(int widthMeasureSpec, int heightMeasureSpec) {  
    //....      //回调onMeasure()方法    
    onMeasure(widthMeasureSpec, heightMe]]></description><category></category></item><item><title><![CDATA[getApplicationContext()、getBaseContext()、getContext()]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53389752</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53389752</guid><author>xueAnother</author><pubDate>Tue, 29 Nov 2016 10:27:30 +0800</pubDate><description><![CDATA[[View.getContext()][1]:  Returns the context the view is currently running in.  Usually the currently active Activity.
[Activity.getApplicationContext()][2]:  Returns the context for the entire applica]]></description><category></category></item><item><title><![CDATA[单链表的递归实现]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53340282</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53340282</guid><author>xueAnother</author><pubDate>Fri, 25 Nov 2016 20:54:03 +0800</pubDate><description><![CDATA[可以将单链表看成是递归定义的，每个结点的next域指向由后诸结点组成的一条子单链表，最后一个结点的next域指向空链表。此时可以将单链表写成递归算法。 
1、构造空链表public class LinkedRecursion<T> {
    public Node<T>head;
       //构造函数，构造空链表
        public LinkedRecursion(){]]></description><category></category></item><item><title><![CDATA[【数据结构】LinkedList原理及实现学习总结]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53223241</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53223241</guid><author>xueAnother</author><pubDate>Fri, 18 Nov 2016 20:47:55 +0800</pubDate><description><![CDATA[一、LinkedList实现原理概述LinkedList 和 ArrayList 一样，都实现了 List 接口，但其内部的数据结构有本质的不同。LinkedList 是基于链表实现的（通过名字也能区分开来），所以它的插入和删除操作比 ArrayList 更加高效。但也是由于其为基于链表的，所以随机访问的效率要比 ArrayList 差。二、LinkedList类定义public class Lin]]></description><category></category></item><item><title><![CDATA[【数据结构】单链表的实现（Java语言描述）]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53208043</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53208043</guid><author>xueAnother</author><pubDate>Thu, 17 Nov 2016 22:48:54 +0800</pubDate><description><![CDATA[单链表是有一个个结点组成的有序表。以下定义单链表的结点类和单链表类来描述单链表。 
1、单链表结点类Node声明如下：//自引用类
public class Node<T> {
    public T data;
    public Node<T> next;
    public Node(T data,Node<T>next){
        this.data=data;]]></description><category></category></item><item><title><![CDATA[获取对话框的控件]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53001274</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53001274</guid><author>xueAnother</author><pubDate>Tue, 01 Nov 2016 21:41:09 +0800</pubDate><description><![CDATA[当我们要获取弹出对话框的某一个控件或者其值时，比如要获取Eiedtext的内容，可以这样操作：   final View layout= (LinearLayout)
                               getLayoutInflater().inflate(R.layout.lable_input,null);                       AlertDia]]></description><category></category></item><item><title><![CDATA[android listview更新数据]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/53001161</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/53001161</guid><author>xueAnother</author><pubDate>Tue, 01 Nov 2016 21:36:20 +0800</pubDate><description><![CDATA[要使listView的列表项发生改变时及时显示在UI中，就要更新listView的数据。 
两种方法： 
方法一： 
数据直接在adapter上修改，adapter.add().等方法 
方法二： 
本质上是listview绑定Adapter，Adapter关联List，因此List变化后导致Adapter同步变化；再通过调用adapter.notifyDataSetChanged();方法使得li]]></description><category></category></item><item><title><![CDATA[也谈layout_gravity和gravity的用法]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/52887146</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/52887146</guid><author>xueAnother</author><pubDate>Fri, 21 Oct 2016 21:19:43 +0800</pubDate><description><![CDATA[相信对于Android的初学者来说，大家都曾经被layout里这两个极其相似的属性迷惑过。简单使用一下搜索工具，我们就不难找到下面这样的答案：layout_gravity 表示组件自身在父组件中的位置  
gravity             表示组件的子组件在组件中的位置 
看似很简单嘛~)貌似大伙瞅一眼就明白了。今天我要说的就是这貌似瞅一眼就明白的道理。  
为什么这么简单的道理，总有同学会发]]></description><category></category></item><item><title><![CDATA[文章标题]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/52800130</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/52800130</guid><author>xueAnother</author><pubDate>Wed, 12 Oct 2016 20:23:25 +0800</pubDate><description><![CDATA[ContentProvider向我们提供了我们在应用程序之前共享数据的一种机制，而我们知道每一个应用程序都是运行在不同的应用程序的，数据和文件在不同应用程序之间达到数据的共享不是没有可能，而是显得比较复杂，而正好Android中的ContentProvider则达到了这一需求，比如有时候我们需要操作手机里的联系人，手机里的多媒体等一些信息，我们都可以用到这个ContentProvider来达到我们所]]></description><category></category></item><item><title><![CDATA[使用HttpURLConnection]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/52770380</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/52770380</guid><author>xueAnother</author><pubDate>Sun, 09 Oct 2016 20:50:48 +0800</pubDate><description><![CDATA[HttpURLConnection继承了URLConnection，差别在与HttpURLConnection仅仅针对Http连接。他在URLConnecion的基础上提供了一些便捷的方法。 
使用的步骤： 
1.创建URL对象 URL url = new URL(path);2.创建HttpURLConnection对象 HttpURLConnection conn = (HttpURLConne]]></description><category></category></item><item><title><![CDATA[http 请求头字段]]></title><link>https://blog.youkuaiyun.com/xueAnother/article/details/52770189</link><guid>https://blog.youkuaiyun.com/xueAnother/article/details/52770189</guid><author>xueAnother</author><pubDate>Sun, 09 Oct 2016 20:32:29 +0800</pubDate><description><![CDATA[Accept: text/html, image/* 
客户机支持的数据类型 
Accept-Charset: ISO-8859-1 
客户机采用的编码 
Accept-Encoding: gzip,compress 
客户机支持的数据压缩格式 
Accept-Language: en-us,zh-cn 
客户机的语言环境 
Host: localhost:80 
访问的主机名 
If-Modifi]]></description><category></category></item></channel></rss>