<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[GL_X85的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/GL_X85</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GL_X85]]></copyright><item><title><![CDATA[AIDL通信的简单实现]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/80532337</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/80532337</guid><author>GL_X85</author><pubDate>Fri, 01 Jun 2018 00:35:32 +0800</pubDate><description><![CDATA[AIDL通信的简单实现方法一：1.服务端1）在src/main目录下新建一个aidl文件夹，2）然后在aidl目录下新建一个同java目录下包名相同的包，3）在其中创建“.java”文件和每个“.java”对应的“.aidl”文件。每个“.aidl”文件只需按如下形式写即可：// Book.aidlpackage a.aidltest.aidltestservice;parcelable Book...]]></description><category></category></item><item><title><![CDATA[AndroidStudio 导入项目 出现“gradle project sync failed：”的错误；]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/80516437</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/80516437</guid><author>GL_X85</author><pubDate>Wed, 30 May 2018 21:34:33 +0800</pubDate><description><![CDATA[报错：出现“gradle project sync failed：”的错误；原因：出现此问题的原因是gradle更新失败，在...\.gradle\wrapper\dists 目录中可看到需要更新的版本解决方法1)手动下载相应版本的压缩包，然后把包放到对应的文件夹中，把文件夹中的其他文件都删掉，2)再重新启动android studio；...]]></description><category></category></item><item><title><![CDATA[AndroidStudio3.0中出现Annotation processors must be explicitly declared now.的错误]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/80516243</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/80516243</guid><author>GL_X85</author><pubDate>Wed, 30 May 2018 21:27:43 +0800</pubDate><description><![CDATA[报错在AndroidStudio3.0中导入AndroidStudio3.0之前的工程出现 Annotation processors must be explicitly declared now.的错误原因解决方法在build.gradle中进行如下配置android {
   ...

    defaultConfig {
       
        //添加以下配置
        ...]]></description><category></category></item><item><title><![CDATA[error: style attribute ‘@android:attr/windowEnterAnimation’ not found.]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/80516125</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/80516125</guid><author>GL_X85</author><pubDate>Wed, 30 May 2018 21:16:50 +0800</pubDate><description><![CDATA[报错： error: style attribute ‘@android:attr/windowEnterAnimation’ not found.提示找不到@android:attr/windowEnterAnimation原因：因为已经不支持@开头使用android自带的属性，需要把@符号删掉。解决方法：全局搜索@android:attr/windowEnterAnimation，找到相应的地...]]></description><category></category></item><item><title><![CDATA[微信支付客户端实现流程]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/78259750</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/78259750</guid><author>GL_X85</author><pubDate>Tue, 17 Oct 2017 14:03:35 +0800</pubDate><description><![CDATA[前期准备：
                1）注册微信开放平台账号
                2）认证开发者资质
                3）创建APP并提交审核
1）2）3）三个流程约7个工作日；
        4）提交资料申请微信支付
5）启动设计和开发
4）5）约3~7个工作日；
6）开户成功，登录商户平台进行验证
7）在线签署协议
8）成功接入微信支付]]></description><category></category></item><item><title><![CDATA[基于高德开放平台SDK的定位Demo]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/78259499</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/78259499</guid><author>GL_X85</author><pubDate>Tue, 17 Oct 2017 13:42:54 +0800</pubDate><description><![CDATA[第1步：
           在高德开放平台添加应用，添加新Key，获取Key值；
第2步：
          下载高德地图SDK、高德定位SDK，将其中的jar包添加到Android Studio工程下的libs目录下，并添加与当前应用的依赖关系；
第3步：
          在AndroidManifest.xml文件中添加地图和定位使用的相关权限；

地图包、搜索包需要的]]></description><category></category></item><item><title><![CDATA[正常退出APP的一种方法]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/78248948</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/78248948</guid><author>GL_X85</author><pubDate>Mon, 16 Oct 2017 13:53:42 +0800</pubDate><description><![CDATA[第1步：
实现一个APP退出工具类：

public class ExitApplication extends Application {
    private List activityList = new LinkedList();
    private static ExitApplication instance;

    private ExitApplication() ]]></description><category></category></item><item><title><![CDATA[Android应用改变状态栏颜色和APP风格保持一致]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/78248857</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/78248857</guid><author>GL_X85</author><pubDate>Mon, 16 Oct 2017 13:45:52 +0800</pubDate><description><![CDATA[第1步：

在项目moudle下的gradle文件里添加以下依赖
compile 'com.githang:status-bar-compat:0.3'
compile 'com.readystatesoftware.systembartint:systembartint:1.0.3'


第2步：
实现一个改变状态栏颜色的工具类
public class ChangeStatu]]></description><category></category></item><item><title><![CDATA[BAT Android工程师面试流程解析+还原最真实最完整的一线公司面试题]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/78028041</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/78028041</guid><author>GL_X85</author><pubDate>Tue, 19 Sep 2017 11:25:00 +0800</pubDate><description><![CDATA[BAT Android工程师面试流程解析+还原最真实最完整的一线公司面试题




     求职和我们每个人息息相关，而求职也有门道，好的发挥和技巧或许能让我们以压倒性优势在面试中胜出，可能我们技不如人，但是我们的综合能力如果优秀的话，企业也愿意招这样的人，因此我将自己亲身经历的BAT和其他知名互联网的面试经验分享给大家，让有技术的人展现获得展现自我的平台，前几天在网上一搜，一系列的百]]></description><category></category></item><item><title><![CDATA[Android项目重构-实现篇]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77990607</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77990607</guid><author>GL_X85</author><pubDate>Fri, 15 Sep 2017 13:28:37 +0800</pubDate><description><![CDATA[前两篇文章Android项目重构之路:架构篇和Android项目重构之路:界面篇已经讲了我的项目开始搭建时的架构设计和界面设计，这篇就讲讲具体怎么实现的，以实现最小化可用产品(MVP)的目标，用最简单的方式来搭建架构和实现代码。IDE采用Android
 Studio，Demo实现的功能为用户注册、登录和展示一个券列表，数据采用我们现有项目的测试数据，接口也是我们项目中的测试接口。

项目搭]]></description><category></category></item><item><title><![CDATA[Android项目重构-界面篇]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77990567</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77990567</guid><author>GL_X85</author><pubDate>Fri, 15 Sep 2017 13:24:04 +0800</pubDate><description><![CDATA[在前一篇文章《Android项目重构之路:架构篇》中已经简单说明了项目的架构，将项目分为了四个层级：模型层、接口层、核心层、界面层。其中，最上层的界面，是变化最频繁的一个层面，也是最复杂最容易出问题的一个层面，如果规划不好，很容易做着做着，又乱成一团了。要规划好界面层，至少应该遵循几条基本的原则：

保持规范性：定义好开发规范，包括书写规范、命名规范、注释规范等，并按照规范严格执行；保持单一性]]></description><category></category></item><item><title><![CDATA[Android项目重构-架构篇]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77990544</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77990544</guid><author>GL_X85</author><pubDate>Fri, 15 Sep 2017 13:19:34 +0800</pubDate><description><![CDATA[去年10月底换到了新公司，做移动研发组的负责人，刚开始接手android项目时，发现该项目真的是一团糟。首先是其架构，是按功能模块进行划分的，本来按模块划分也挺好的，可是，他却分得太细，总共分为了17个模块，而好几个模块也就只有两三个类而已。但应用本身其实比较简单，要按功能模块来分的话，最多五个模块就够了。另外，有好多模块划分也很模糊，也有很多类按其功能其实可以属于多个模块的，也有些类定义不明确，]]></description><category></category></item><item><title><![CDATA[ListView的数据更新问题]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77968862</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77968862</guid><author>GL_X85</author><pubDate>Wed, 13 Sep 2017 17:38:26 +0800</pubDate><description><![CDATA[我们前面已经学习了ListView的一些基本用法咧，但是细心的你可能发现了，我们的数据一开始定义好的，都是静态的，但是实际开发中，我们的数据往往都是动态变化的，比如我增删该了某一列，那么列表显示的数据也应该进行同步的更新，那么本节我们就来探讨下ListView数据更新的问题，包括全部更新，以及更新其中的一项，那么开始本节内容！~


1.先写个正常的demo先

好的，先写个正常的Dem]]></description><category></category></item><item><title><![CDATA[使用ListView无数据时，使用ListView的setEmptyView(View emptyView)方法设置空白页面]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77966809</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77966809</guid><author>GL_X85</author><pubDate>Wed, 13 Sep 2017 15:34:18 +0800</pubDate><description><![CDATA[ListView无数据时，使用ListView的setEmptyView(View emptyView)方法设置空白页面的简单实现]]></description><category></category></item><item><title><![CDATA[ListView之checkbox错位问题解决]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77965085</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77965085</guid><author>GL_X85</author><pubDate>Wed, 13 Sep 2017 14:07:45 +0800</pubDate><description><![CDATA[作为ListView经典问题之一，如果你尝试过自定义ListView的item，在上面带有一个checkbox的话，那么当你的item数超过了一页的话，就会出现这个问题，下面我们来分析下出现这种问题的原因，以及如何来解决这个问题！


1.问题发生的原因：
这是网上找来的一幅关于ListView getView方法调用机制的一个图

上图中有一个Recycler的东东，平时我们List]]></description><category></category></item><item><title><![CDATA[ListView的焦点问题]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77963987</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77963987</guid><author>GL_X85</author><pubDate>Wed, 13 Sep 2017 11:47:58 +0800</pubDate><description><![CDATA[如果你往ListView的Item中添加了Button，CheckBox，EditText等控件的话，你可能需要考虑到一个问题：ListView的一个焦点问题！本节我们就来学习下解决这个问题的几个方法！
我们可以写个简答的listView，上面有一个Button，CheckBox，EditText，但是当我们点击发现，ListView的item点击不了，触发不了onItemClick的方法，也触]]></description><category></category></item><item><title><![CDATA[BaseAdapter优化]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77963006</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77963006</guid><author>GL_X85</author><pubDate>Wed, 13 Sep 2017 10:43:22 +0800</pubDate><description><![CDATA[上一节中我们学习了如何来使用一个ListView以及自定义一个简单的BaseAdapter，我们从代码中可以看出比较重要的两个方法:getCount()和getView()，界面上有多少列就会调用多少次getView，这个时候可能看出一些端倪，每次都是新inflate一个View，都要进行这个XML的解析，这样会很浪费资源，当然，几十列或者几百列的列表并不能体现什么问题，但假如更多或者布局更加复杂]]></description><category></category></item><item><title><![CDATA[ListView简单实用－部分常用属性设置]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77948504</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77948504</guid><author>GL_X85</author><pubDate>Tue, 12 Sep 2017 18:59:24 +0800</pubDate><description><![CDATA[3.列表从底部开始显示：stackFromBottom

如果你想让列表显示你列表的最下面的话，那么你可以使用这个属性，将stackFromBottom属性设置为true即可，设置后的效果图如下：



4.设置点击颜色cacheColorHint

如果你为ListView设置了一个图片作为Background的话，当你拖动或者点击listView空白位置会发现item都变成黑色]]></description><category></category></item><item><title><![CDATA[ListView简单实用－表头表尾分割线的设置]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77948385</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77948385</guid><author>GL_X85</author><pubDate>Tue, 12 Sep 2017 18:42:36 +0800</pubDate><description><![CDATA[listview作为一个列表控件，他和普通的列表一样，可以自己设置表头与表尾：以及分割线，可供我们设置的属性如下：

footerDividersEnabled：是否在footerView(表尾)前绘制一个分隔条,默认为trueheaderDividersEnabled:是否在headerView(表头)前绘制一个分隔条,默认为truedivider:设置分隔条,可以用颜色分割,也可以用dra]]></description><category></category></item><item><title><![CDATA[ListView简单实用－自定义BaseAdapter，然后绑定ListView的最简单例子]]></title><link>https://blog.youkuaiyun.com/GL_X85/article/details/77948227</link><guid>https://blog.youkuaiyun.com/GL_X85/article/details/77948227</guid><author>GL_X85</author><pubDate>Tue, 12 Sep 2017 18:18:34 +0800</pubDate><description><![CDATA[本节我们来继续学习没有讲完的UI控件部分，回顾上一节，我们介绍了Adapter适配器的概念，然后学习了三个最简单的适配器的使用：
ArrayAdapter，SimpleAdapter和SimpleCursorAdapter，而本节给大家讲解的是第一个需搭配Adapter使用的UI控件：ListView，不过在版本中被RecyclerView这个新控件替换掉了！
列表作为最常用的控件之一，还是有]]></description><category></category></item></channel></rss>