<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[firesmog的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/firesmog</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; firesmog]]></copyright><item><title><![CDATA[Android 通过系统每分钟发一次的广播实现动态刷新时间]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/106928652</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/106928652</guid><author>firesmog</author><pubDate>Tue, 23 Jun 2020 17:50:53 +0800</pubDate><description><![CDATA[查找刷新时间的博客，发现一般都是通过开线程写死循环，每分钟或者每秒钟给handler发消息来刷新时间的，这种可能导致泄漏，也不稳定，所以个人并不想采纳。我们可以直接利用系统的广播来实现功能。

系统每分钟都会发送广播Intent.ACTION_TIME_TICK

动态注册广播


IntentFilter filter=new IntentFilter();
filter.addAction(Intent.ACTION_TIME_TICK);
registerReceiver(timeReciver,fi]]></description><category></category></item><item><title><![CDATA[viewpager中彻底性动态添加、删除Fragment]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/106156411</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/106156411</guid><author>firesmog</author><pubDate>Sat, 16 May 2020 11:21:46 +0800</pubDate><description><![CDATA[viewpager嵌套fragment是一个比较帅气的使用，但是问题多多，毕竟没怎么用过。

之前viewpager的使用顶多是在应用开始的介绍页，viewpager内嵌几张介绍图片，其实这个使用是比较常规的；假如嵌套布局搞的复杂点，如自定义view/fragment，那么就要考虑下布局资源的分发情况了，而不是简单的对Adapter或者pager进行clear、removeAllViews。
拿自己的项目使用情况来说，开始以为viewpager的页数是定的，但最后才知道是动态改变的，不仅可以增加，还要动态.]]></description><category></category></item><item><title><![CDATA[跳转activity的动画实现]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/81608440</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/81608440</guid><author>firesmog</author><pubDate>Sun, 12 Aug 2018 17:43:49 +0800</pubDate><description><![CDATA[前言

我看到博客上有很多关于跳转activity动画的实现，也是借鉴博客上的方法实现的，这里我只记录一点关于跳转加速器的设置。为后续自己使用能快速找到，大家一起学习。

实现步骤：

一：先在res文件下创建anim文件来放置xml动画文件，一般动画会有两个，activity A跳转到其他activity B的动画和activity A本身退出时的动画。这里我们新建zoomin.xml表示跳转动...]]></description><category></category></item><item><title><![CDATA[RecyclerView滑动监听实现button消失与展现动画]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/81511012</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/81511012</guid><author>firesmog</author><pubDate>Wed, 08 Aug 2018 17:31:00 +0800</pubDate><description><![CDATA[需求说明：

由于界面大小限制，我们写完listview或者recyclerView展现图片后已经占据了整个屏幕，屏幕下方还有个button，我们需要在滑动图片的时候button隐藏，出现图片的时候展现button。



需求分析：

一、给receycleview添加滑动监听事件

二、给button添加动画效果

需求实现：

一、我们要实现滑动监听


//定义自动隐藏监听内部类，实现re...]]></description><category></category></item><item><title><![CDATA[android 简单有点击效果的button]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/81510576</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/81510576</guid><author>firesmog</author><pubDate>Wed, 08 Aug 2018 16:38:45 +0800</pubDate><description><![CDATA[需求如下图：



需求分析：

一、这里button出现圆角，并且颜色渐变，需要自己实现特效。

二、这里需要对按钮背景和文字 在点击时做处理，需要用到selector。

需求实现：

其实android的圆角边框是通过背景图片来设置的. 
那么需要现在drawable文件夹中创建一个bt_shap_green_normal.xml的文件


&amp;lt;?xml version=&quot;1.0&quot; en...]]></description><category></category></item><item><title><![CDATA[Fragment生命周期]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/81381049</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/81381049</guid><author>firesmog</author><pubDate>Fri, 03 Aug 2018 09:26:52 +0800</pubDate><description><![CDATA[本文转载于 Fragment生命周期详解，感谢博主的付出，转载到此，也是为了自己的工作学习。大家一起进步

简单来说，Fragment 的生命周期可以用下图来表示：



　1. onAttach()，该方法是用在Fragment和Activity建立关系的时候调用的，它会携带一个参数Context或者Activity(API &amp;lt; 23时)。 　2. onCreate()，与Activity...]]></description><category></category></item><item><title><![CDATA[通过注解获取Ormlite数据库主键]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/81359640</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/81359640</guid><author>firesmog</author><pubDate>Thu, 02 Aug 2018 15:34:22 +0800</pubDate><description><![CDATA[前言

工作的时候，有线上问题反馈有很少量数据库问题，而且不好解决，后面发现是在封装数据库的时候出了问题。先解释下问题，然后再解决。

数据库封装中的问题


private int updateIfValueNotNull(T t) {
        int result = 0;
        UpdateBuilder updateBuilder = this.ormLiteDao.up...]]></description><category></category></item><item><title><![CDATA[Android Cavas demo]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/80346144</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/80346144</guid><author>firesmog</author><pubDate>Thu, 17 May 2018 09:31:13 +0800</pubDate><description><![CDATA[Path常用方法方法作用备注moveTo移动起点移动下一次操作的起点位置lineTo连接直线连接上一个点到当前点之间的直线setLastPoint设置终点重置最后一个点的位置close闭合路劲从最后一个点连接最初的一个点，形成一个闭合区域addRect添加矩形添加矩形到当前PathaddRoundRect添加圆角矩形添加圆角矩形到当前PathaddOval添加椭圆添加椭圆到当前PathaddCir...]]></description><category></category></item><item><title><![CDATA[ormlite的一点常用的操作]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/78870078</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/78870078</guid><author>firesmog</author><pubDate>Fri, 22 Dec 2017 10:00:10 +0800</pubDate><description><![CDATA[前言记录一下ormlite的一点常用方法，免得用到时，到处去找资源，后续用到更多，逐渐添加上来,主要参考[这里写链接内容](http://blog.youkuaiyun.com/industriously/article/details/50790624)
的文章，在此表示感谢。常用方法
方法 ：eq(columnName,value) 等于（=）equals 
使用示范：mDao.queryBuilder()]]></description><category></category></item><item><title><![CDATA[ViewPager实现可控制切屏时间的可点击轮播演示]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/78820370</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/78820370</guid><author>firesmog</author><pubDate>Sat, 16 Dec 2017 15:59:44 +0800</pubDate><description><![CDATA[ViewPager实现可控制切屏时间的可点击轮播演示前言   最近写了一个基于ViewPager的图片轮播演示的demo，除去切屏监听外，还添加了OnTouch事件，切换图片过程的时间也可以设置，为以后再用到切屏时能够方便的控制，故记录下来供自己学习使用，中间主要是参考了Android之——史上最简单图片轮播广告效果实现以及 android图片轮播效果，开源框架RollViewPager的简单使用的]]></description><category></category></item><item><title><![CDATA[popupWindow的使用]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/77119457</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/77119457</guid><author>firesmog</author><pubDate>Sat, 12 Aug 2017 15:48:46 +0800</pubDate><description><![CDATA[前言 好久没有更新自己的博客了，这周在项目中有应用到，当服务端崩溃的时候，弹出Tips框，弹出后用户点击Tip框之外的区域要使得Tips消失，需求很简单，实现方式也有多种，这里借用该机会也学习使用一下popwindow。]]></description><category></category></item><item><title><![CDATA[Android 权限配置一览]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/64906308</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/64906308</guid><author>firesmog</author><pubDate>Wed, 22 Mar 2017 11:08:46 +0800</pubDate><description><![CDATA[访问登记属性
android.permission.ACCESS_CHECKIN_PROPERTIES
读取或写入登记check-in数据库属性表的权限
获取错略位置
android.permission.ACCESS_COARSE_LOCATION
通过WiFi或移动基站的方式获取用户错略的经纬度信息
定位精度大概误差在30~1500米
获取精确位置
android.permission.ACCE]]></description><category></category></item><item><title><![CDATA[自定义View之组合控件]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/64439294</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/64439294</guid><author>firesmog</author><pubDate>Tue, 21 Mar 2017 10:50:28 +0800</pubDate><description><![CDATA[一、简要介绍之前写过自定义view与viewgroup但是那里阐述的是写一个可以设置多属性的可以设置响应事件的view，但是很多场景下又有很多不同，比如下图所示的由几个控件组合起来一个自定义控件来实现布局代码复用、逻辑清晰等作用二、组合控件优势一般，我们在布局的时候，如果出来多个类似的样式，比如上图的ImagVIew+TextVIew+ImagVIew会出现多次，我们可以有多种写法，比如使用线性布局]]></description><category></category></item><item><title><![CDATA[ViewDragHelper的学习]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/63252240</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/63252240</guid><author>firesmog</author><pubDate>Sat, 18 Mar 2017 11:27:30 +0800</pubDate><description><![CDATA[一、概述使用到ViewDragHelper是自己在做仿微信的侧滑删除操作时用到的，需要对Recycleview内的Item的滑动事件做处理，并将隐藏在屏幕右侧的view滑出来做出删除操作。自己的demo删除了，这里就借用一下ITluochen大神的demo，主要是能为自己以后用到ViewDragHelper提供方便与指引，ITluochen大神的demo讲解的其实非常详细了，大家也可以去看看。 
这]]></description><category></category></item><item><title><![CDATA[自定义View与ViewGroup]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/62884909</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/62884909</guid><author>firesmog</author><pubDate>Fri, 17 Mar 2017 11:47:09 +0800</pubDate><description><![CDATA[一、前言这里是参考鸿洋_大神的博客写的，觉得大神将自定义控件分为View与ViewGroup来写很有助与我们的学习，能够起到一个对比分析的作用，这里我也仅仅是将两者结合起来，并对鸿洋大神在viewgroup代码中一点点忽略的地方加了点小小改动，总之非常谢谢大神带来的帮助，写此博客希望大家一起成长学习。二、自定义View（1）自定义View步骤1）、在res/values/  下建立一个attrs.x]]></description><category></category></item><item><title><![CDATA[从底部滑出动画引发的关于View的一点理解]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/62425532</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/62425532</guid><author>firesmog</author><pubDate>Thu, 16 Mar 2017 16:11:56 +0800</pubDate><description><![CDATA[简要介绍这篇博文主要是自己在借鉴一个从底部滑出布局的属性动画过程中，遇到了一点小疑惑，从而去查阅了一点相关资料，总结一下对window、Activity、DecorView、ViewRoot关系的理解，同时也非常感谢点击文章给我带来的帮助。也是借鉴了一篇关于做从底部滑出的动画的博文的demo，这里自己将给出一点自己的理解注释。关于View的一点解析这里给出的解析实际是留给自己看的，供自己学习，怕以后]]></description><category></category></item><item><title><![CDATA[Android 属性动画实例+疑惑]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/62417984</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/62417984</guid><author>firesmog</author><pubDate>Thu, 16 Mar 2017 10:33:38 +0800</pubDate><description><![CDATA[简要介绍本文是参考请叫我大苏的博客，写的非常实用，这里主要是记录这个实例方便以后自己的使用，同时也在项目中遇到的疑惑贴出来，希望有人能帮忙解答一下，大家共同学习，谢谢。demo介绍本demo实现的就两个功能，一个竖直方向扩展图片，一个呈圆弧状扩展图片。图片如下： 
 
 
这里两个demo，主要是写一点实用的业务，避免以后到处查找，方便自己借鉴。demo步骤首先导入依赖： 
  compile ‘c]]></description><category></category></item><item><title><![CDATA[EventBus使用]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/62045633</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/62045633</guid><author>firesmog</author><pubDate>Tue, 14 Mar 2017 16:55:52 +0800</pubDate><description><![CDATA[EventBus简单介绍EventBus就是事件总线的意思，个人理解为：我们先把一个个事件(event)发送到总线上，然后EventBus根据已注册的订阅者(subscribers)来匹配相应的事件，进而把事件传递给订阅者处理（可以指定不同的线程处理）。我们在平时开发的时候，当遇到Activity与Activity或者Activity与Fragment之间的通信，往往采用Intent，又或者线程之间]]></description><category></category></item><item><title><![CDATA[转载 仿微信表情与软键盘冲突]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/62039802</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/62039802</guid><author>firesmog</author><pubDate>Tue, 14 Mar 2017 11:26:44 +0800</pubDate><description><![CDATA[android高仿微信表情输入与键盘输入(详细实现分析)            
        
    
    <div class="article_manage clearfix">
    <div class="article_l">
        <span class="link_categories">
        标签：
          <a href="http:/]]></description><category></category></item><item><title><![CDATA[基于socket的可发送表情简单即时通讯]]></title><link>https://blog.youkuaiyun.com/firesmog/article/details/61409561</link><guid>https://blog.youkuaiyun.com/firesmog/article/details/61409561</guid><author>firesmog</author><pubDate>Sat, 11 Mar 2017 08:26:20 +0800</pubDate><description><![CDATA[前言这段时间做的东西比较杂，但是对学习来说还是很有帮助的，这次做的基于socket的即时通讯也是为了更加了解IM，本来是打算使用openfire或者apollo服务器来实现的，但是中途时间上的问题，临时改了需求，后期的语音通话还是要借助第三方服务器的，这里主要是自己用myeclipse写了一个简单的代理服务器，主要是将客户端发来的消息转发到已经保存到链表中的socket中，实现比较简单，主要是解决发]]></description><category></category></item></channel></rss>