<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[GuuInBelieve的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/GuuInBelieve</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GuuInBelieve]]></copyright><item><title><![CDATA[ScrollView fillViewport 属性的作用]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/100109054</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/100109054</guid><author>GuuInBelieve</author><pubDate>Tue, 27 Aug 2019 21:47:35 +0800</pubDate><description><![CDATA[通常情况下，ScrollView 子 View 的 layout_height 属性不起作用（总是 wrap_content），子 View 的高度应该由 ScrollView 的 fillViewport 属性设置。
当 ScrollView 的 fillViewport 属性设置为 true 时：

如果 ScrollView 的高度大于子 View 的高度，则相当于设置子 View 的 la...]]></description><category></category></item><item><title><![CDATA[DialogFragment 消失后，如何重新触发父 activity 的 onResume？]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/99823447</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/99823447</guid><author>GuuInBelieve</author><pubDate>Tue, 20 Aug 2019 10:25:33 +0800</pubDate><description><![CDATA[重写 DialogFragment 的 dismiss 函数，使用 FLAG_ACTIVITY_REORDER_TO_FRONT 方式重启父 activity，即可触发父 activity 的 onResume。
    @Override
    public void dismiss() {
        try {
            FragmentActivity fragment...]]></description><category></category></item><item><title><![CDATA[APK 文件结构]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/82530932</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/82530932</guid><author>GuuInBelieve</author><pubDate>Sat, 08 Sep 2018 16:50:09 +0800</pubDate><description><![CDATA[Android 应用由 Java 编写，利用 Android SDK 编译。Android 应用的 APK（Android Package）安装文件是一个包含所有代码和资源文件的压缩包。解压这个包，我们可以看到以下结构：


列表内容 asserts 目录：静态文件
lib 目录：应用依赖的 native 库
res 目录：资源文件
META-INF 目录：签名文件
AndroidManifest...]]></description><category></category></item><item><title><![CDATA[RxJava 知识目录与总结]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79926233</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79926233</guid><author>GuuInBelieve</author><pubDate>Fri, 13 Apr 2018 16:17:11 +0800</pubDate><description><![CDATA[！]]></description><category></category></item><item><title><![CDATA[Java 中断机制]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79727213</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79727213</guid><author>GuuInBelieve</author><pubDate>Wed, 28 Mar 2018 14:31:15 +0800</pubDate><description><![CDATA[关键方法

public void interrupt() 
将调用线程的中断状态设置为 true

public boolean isInterrupted() 
返回调用线程的中断状态

public static boolean interrupted() 
1. 返回调用线程的中断状态 
2. 将调用线程的中断状态设置为 false



知识储备


sleep()，wait()，joi...]]></description><category></category></item><item><title><![CDATA[Java 锁机制]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79587799</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79587799</guid><author>GuuInBelieve</author><pubDate>Fri, 16 Mar 2018 22:33:45 +0800</pubDate><description><![CDATA[ReentrantLock



优点


可重入
可中断
可限时
公平锁




一般用法



public class Starter extends Thread {

    public static ReentrantLock lock = new ReentrantLock();
    public static int i = 0;

    public Starter(St...]]></description><category></category></item><item><title><![CDATA[虎牙 安卓开发面试 问题整理（2018.3.6）]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79556864</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79556864</guid><author>GuuInBelieve</author><pubDate>Wed, 14 Mar 2018 16:44:49 +0800</pubDate><description><![CDATA[！]]></description><category></category></item><item><title><![CDATA[Java HashMap 原理]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79556592</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/79556592</guid><author>GuuInBelieve</author><pubDate>Wed, 14 Mar 2018 16:31:42 +0800</pubDate><description><![CDATA[参考资料：HashMap 的实现原理



作用

前提：尽量使数组每个 index 位置上的元素数量只有一个； 
结果：给定 key，根据哈希算法（hashCode()，hash()，indexFor()）即可求出 index，数组 index 位置上的元素即我们需要的元素； 
优点：大大优化了查询的效率。

ps： 
hashCode：返回对象的内存地址，一般是唯一的 
hash：对 hash...]]></description><category></category></item><item><title><![CDATA[Android View 的滑动冲突]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78999055</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78999055</guid><author>GuuInBelieve</author><pubDate>Mon, 08 Jan 2018 02:53:50 +0800</pubDate><description><![CDATA[什么叫滑动冲突？

外部 View 和内部 View 都可以滑动，当滑动事件产生时，没有选择正确的 View 进行处理；



滑动冲突场景


外部滑动方向和内部滑动方向不一致；
外部滑动方向和内部滑动方向一致；
以上两种情况的嵌套；




以上场景该由谁来拦截事件？


根据滑动是水平滑动还是竖直滑动判断；
根据业务规则判断；
根据业务规则判断；




注释

RDITE：requestD]]></description><category></category></item><item><title><![CDATA[Android include merge ViewStub]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78989427</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78989427</guid><author>GuuInBelieve</author><pubDate>Sat, 06 Jan 2018 15:59:09 +0800</pubDate><description><![CDATA[！]]></description><category></category></item><item><title><![CDATA[Android 广播 使用方法]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78982523</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78982523</guid><author>GuuInBelieve</author><pubDate>Fri, 05 Jan 2018 16:11:28 +0800</pubDate><description><![CDATA[动态注册的广播接收器



// MainActivity.java

public class MainActivity extends AppCompatActivity {

    private IntentFilter mIntentFilter;
    private DynamicBroadcastReceiver mDynamicBroadcastReceiver;]]></description><category></category></item><item><title><![CDATA[Android 碎碎记]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78981292</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78981292</guid><author>GuuInBelieve</author><pubDate>Fri, 05 Jan 2018 15:13:13 +0800</pubDate><description><![CDATA[1. onSaveInstanceState() 的启动时机


HOME 键
长按 HOME 键选择其他应用程序（未证实，手机没有该功能）
锁屏
启动新的 Activity
屏幕方向切换


2. 进程优先级比较


前台进程（FOREGROUND_APP）
可见进程（VISIBLE_APP）
次要服务进程（SECONDARY_SERVER）
后台进程（HIDDEN_APP）
内容供应节点（CO]]></description><category></category></item><item><title><![CDATA[喝一瓶饮料，等于去操场跑多少圈？]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78954552</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78954552</guid><author>GuuInBelieve</author><pubDate>Tue, 02 Jan 2018 18:40:38 +0800</pubDate><description><![CDATA[打响新年第一枪！]]></description><category></category></item><item><title><![CDATA[关于编码（Unicode）与转换格式（UTF）的区别]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78923464</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78923464</guid><author>GuuInBelieve</author><pubDate>Thu, 28 Dec 2017 16:15:22 +0800</pubDate><description><![CDATA[很多人都把 Unicode 编码挂在嘴边，其实他们想表达的是 Unicode 转换格式，即 UTF，Unicode Transformation Formats]]></description><category></category></item><item><title><![CDATA[Java finally 执行规则]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78916890</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78916890</guid><author>GuuInBelieve</author><pubDate>Wed, 27 Dec 2017 21:56:31 +0800</pubDate><description><![CDATA[Java finally 执行规则（针对 return 语句）]]></description><category></category></item><item><title><![CDATA[Java 碎碎记]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78907440</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78907440</guid><author>GuuInBelieve</author><pubDate>Tue, 26 Dec 2017 22:47:43 +0800</pubDate><description><![CDATA[牛客刷题笔记 - Java 篇]]></description><category></category></item><item><title><![CDATA[Android 自定义 View 总结]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78888589</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78888589</guid><author>GuuInBelieve</author><pubDate>Sun, 24 Dec 2017 23:49:53 +0800</pubDate><description><![CDATA[ViewRoot，WindowManager 和 DecorView 的关系

ViewRoot 对应于 ViewRootImpl 类，它是连接 WindowManager 和 DecorView 的纽带，View 的三大流程是通过 ViewRoot 来完成的；

View 的绘制过程

performTraversals -&amp;amp;amp;amp;amp;gt;

performMeasure -&amp;amp;amp;amp;amp;gt; measure -&amp;amp;amp;amp]]></description><category></category></item><item><title><![CDATA[Android Touch 事件分发机制]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78883010</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78883010</guid><author>GuuInBelieve</author><pubDate>Sun, 24 Dec 2017 00:02:05 +0800</pubDate><description><![CDATA[！]]></description><category></category></item><item><title><![CDATA[Java 使用反射观察子类是否继承了父类的私有方法]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78881939</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78881939</guid><author>GuuInBelieve</author><pubDate>Sat, 23 Dec 2017 20:16:45 +0800</pubDate><description><![CDATA[使用放射可以看出子类继承了父类的私有方法（不管是否是 final），只是不能直接调用。但是利用反射的方式可以调用。]]></description><category></category></item><item><title><![CDATA[ImageLoader 源码]]></title><link>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78868277</link><guid>https://blog.youkuaiyun.com/GuuInBelieve/article/details/78868277</guid><author>GuuInBelieve</author><pubDate>Thu, 21 Dec 2017 22:06:19 +0800</pubDate><description><![CDATA[《Android 开发艺术探索》第12章 ImageLoader 框架源码]]></description><category></category></item></channel></rss>