<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[A Coder]]></title><description><![CDATA[Watch and learn]]></description><link>https://blog.youkuaiyun.com/louislrt</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; louislrt]]></copyright><item><title><![CDATA[06 XML 属性]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/104014378</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/104014378</guid><author>louislrt</author><pubDate>Fri, 17 Jan 2020 09:41:45 +0800</pubDate><description><![CDATA[XML 元素可以在开始标签中包含属性，类似 HTML。

属性 (Attribute) 提供关于元素的额外（附加）信息。


XML 属性

从 HTML，你会回忆起这个：&lt;img src="computer.gif"&gt;。"src" 属性提供有关 &lt;img&gt; 元素的额外信息。

在 HTML 中（以及在 XML 中），属性提供有关元素的额外信息：

&lt;img src...]]></description><category></category></item><item><title><![CDATA[05 XML 元素]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/104014266</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/104014266</guid><author>louislrt</author><pubDate>Fri, 17 Jan 2020 09:34:34 +0800</pubDate><description><![CDATA[什么是 XML 元素？
XML 元素指的是从（且包括）开始标签直到（且包括）结束标签的部分。
元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。
例：
&lt;bookstore&gt;
&lt;book category="CHILDREN"&gt;
  &lt;title&gt;Harry Potter&lt;/title&gt; 
  &lt;author&gt;J K. Row...]]></description><category></category></item><item><title><![CDATA[04 XML 语法规则]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/104005305</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/104005305</guid><author>louislrt</author><pubDate>Thu, 16 Jan 2020 15:14:33 +0800</pubDate><description><![CDATA[XML 的语法规则很简单，且很有逻辑。这些规则很容易学习，也很容易使用。

1. 所有 XML 元素都须有关闭标签

在 HTML，经常会看到没有关闭标签的元素：

&lt;p&gt;This is a paragraph &lt;p&gt;This is another paragraph

在 XML 中，省略关闭标签是非法的。所有元素都必须有关闭标签：

&lt;p&gt;This is a...]]></description><category></category></item><item><title><![CDATA[03XML 树结构]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/104000705</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/104000705</guid><author>louislrt</author><pubDate>Thu, 16 Jan 2020 10:51:33 +0800</pubDate><description><![CDATA[XML 文档形成了一种树结构，它从“根部”开始，然后扩展到“枝叶”。

一个 XML 文档实例

XML 使用简单的具有自我描述性的语法：

&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt; &lt;note&gt; &lt;to&gt;George&lt;/to&gt; &lt;from&gt;John&lt;/from&gt; &lt;head...]]></description><category></category></item><item><title><![CDATA[02 XML 用途]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/103911684</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/103911684</guid><author>louislrt</author><pubDate>Thu, 09 Jan 2020 17:02:31 +0800</pubDate><description><![CDATA[XML 应用于 web 开发的许多方面，常用于简化数据的存储和共享。

XML 把数据从 HTML 分离

如果你需要在 HTML 文档中显示动态数据，那么每当数据改变时将花费大量的时间来编辑 HTML。

通过 XML，数据能够存储在独立的 XML 文件中。这样你就可以专注于使用 HTML 进行布局和显示，并确保修改底层数据不再需要对 HTML 进行任何的改变。

通过使用几行 JavaScri...]]></description><category></category></item><item><title><![CDATA[01 XML 基础]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/103911585</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/103911585</guid><author>louislrt</author><pubDate>Thu, 09 Jan 2020 16:58:33 +0800</pubDate><description><![CDATA[写在第一篇前面：

这个系列是xml学习笔记，基本内容都是在网上找到整理的，如果有涉及到版权的可以联系我我做好标记。


XML 被设计用来传输和存储数据。

HTML 被设计用来显示数据。

应该掌握的基础知识：

在学习之前，最好对以下知识有基本的了解：

HTML / XHTML
	JavaScript
什么是 XML?

XML 指可扩展标记语言（EXtensible Markup La...]]></description><category></category></item><item><title><![CDATA[运营相关英文缩写含义记录]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/90543941</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/90543941</guid><author>louislrt</author><pubDate>Sat, 25 May 2019 10:21:00 +0800</pubDate><description><![CDATA[KOL
关键意见领袖（Key Opinion Leader）[KOL参考]1
通常被认为是：拥有更多、更准确的产品信息，且为相关群体所接受或信任，并对该群体的购买行为有较大影响力的人。
简单来说：就是在某个领域拥有一定影响力的人。大如锤子科技的罗永浩、小米的雷军；小到贴吧的吧主、某读书群的领读人……这些都可以称之为KOL。
而KOL最大的两个特点是：有粉丝基础，能影响粉丝行为！
AARRR
AAR...]]></description><category></category></item><item><title><![CDATA[【Android】生成随机数]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/90487837</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/90487837</guid><author>louislrt</author><pubDate>Thu, 23 May 2019 20:54:53 +0800</pubDate><description><![CDATA[项目中时常会用到随机数，安卓中的随机数的方法主要继承的是java的两个库

java.lang.Math中的Math.random()
java.util.Random类中的Random.nextDouble()/Random.nextInt()


1、Math.random()
Math.random()是产生一个[0，1）之间的随机数,并且不存在四舍五入的概念
来看看它的源码:
publi...]]></description><category></category></item><item><title><![CDATA[【Android】dp-sp-屏幕像素密度]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/90350049</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/90350049</guid><author>louislrt</author><pubDate>Sun, 19 May 2019 23:48:12 +0800</pubDate><description><![CDATA[在为视图指定尺寸大小值（通常以像素为单位，有时也用点、毫米或英寸）常见的属性有

文字大小（TextSize）：指定设备上显示的文字像素高度
边距（margin）：指定视图组件间的距离
内边距（padding）：指定视图外边框预期内容的距离

由于Android设备繁多在不同屏幕间进行自动适配的工作量总是很大，Android提供了密度无关的尺寸单位（density-independent dim...]]></description><category></category></item><item><title><![CDATA[集成ButterKnife后 重新了OnClick事件无响应]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/90301326</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/90301326</guid><author>louislrt</author><pubDate>Fri, 17 May 2019 22:07:20 +0800</pubDate><description><![CDATA[ButterKnife在我们开发界面时大大的节省了我们的时间和简化了我们的代码，在第一次集成的时候遇到了个小问题，在这里记录一下，当我导入库后@BindView可以成功，但是在开发点击事件时就无法响应@OnClick方法

问题其实出在我们集成库的时候，一般我们都会在gradle中集成下面这个库
compile 'com.jakewharton:butterknife:8.4.0'
集成这个库后...]]></description><category></category></item><item><title><![CDATA[【Android】判断当前系统时间是否在特定的时间的段内]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/90052746</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/90052746</guid><author>louislrt</author><pubDate>Fri, 10 May 2019 10:15:56 +0800</pubDate><description><![CDATA[在做项目时有时会有需求要在指定时间段内进行特定操作，比如21点到第二天7点不进行响铃提醒，必须在5点到8点进行任务打卡等等，这时就需要进行时段判断，下面这段操作就是时段判断，可直接加入工具类中使用。

/**
* 判断当前系统时间是否在特定时间的段内
*
* @param beginHour 开始的小时，例如5
* @param beginMin 开始小时的分钟数，例如00
* @param e...]]></description><category></category></item><item><title><![CDATA[【Android】java.lang.IllegalStateException: The specified child already has a parent.]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/88537469</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/88537469</guid><author>louislrt</author><pubDate>Wed, 13 Mar 2019 17:48:25 +0800</pubDate><description><![CDATA[在使用ViewPager和Tablayout动态加载后台数据进行多页显示时遇到了一个问题，记录如下：

报错信息：


java.lang.IllegalStateException: The specified child already has a parent. 
You must call removeView() on the child's parent first.

初步分析：
...]]></description><category></category></item><item><title><![CDATA[【Android】AndroidStudio在局域网内无线连接手机远程调试]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/88391334</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/88391334</guid><author>louislrt</author><pubDate>Mon, 11 Mar 2019 12:22:00 +0800</pubDate><description><![CDATA[AndroidStudio可以无线连接手机，方便调试。

准备工作：

1、安装AndroidStudio（我的版本是3.2.1）

2、将Android SDK中的platform-tools增加到系统的Path环境变量中（比如我是D:\ProgramData\Android\sdk\platform-tools），增加完后最好重启下电脑。



*是否增加成功可通过命令行或是AndroidS...]]></description><category></category></item><item><title><![CDATA[【Android】关于大数字格式化为千或万等（例如1945格式化为1.9k）]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/88359415</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/88359415</guid><author>louislrt</author><pubDate>Fri, 08 Mar 2019 21:51:10 +0800</pubDate><description><![CDATA[处理点赞和评论的数量时，经常有需求要将过长的数据进行缩减，比如：1945格式化为1.9k，19450格式化为1.9w

功能主要会用到两个函数：

1、判断后端返回的数据是否是数字


public static boolean isNumeric(String str) {
        for (int i = str.length(); --i &amp;gt;= 0; ) {
         ...]]></description><category></category></item><item><title><![CDATA[【Android】Rxjava+Retrofit框架加载时报Fatal Exception thrown on Scheduler.Worker thread错误的处理]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/88322023</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/88322023</guid><author>louislrt</author><pubDate>Thu, 07 Mar 2019 22:13:04 +0800</pubDate><description><![CDATA[在做项目时遇到一个比较坑的bug，比较难复现，只有bug反馈（这里要感谢友盟的bug记录功能），bug的节选信息如下：


java.lang.IllegalStateException: Fatal Exception thrown on Scheduler.Worker thread.
	at rx.internal.schedulers.ScheduledAction.run(Schedul...]]></description><category></category></item><item><title><![CDATA[【Android】TextView动态设置Drawable资源]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/83993469</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/83993469</guid><author>louislrt</author><pubDate>Mon, 12 Nov 2018 16:08:28 +0800</pubDate><description><![CDATA[TextView附加ICO时可以不需要再额外的创建一个控件来显示其对应的ICO，在布局中增加如下代码即可（已在左面添加为例）


android:drawableLeft=&quot;@drawable/circle_weiguan&quot;

在程序运行过程中也有时会去改变其对应的资源进行状态切换，Android中有一下两种方案：


TextView diaryZanNum；
diaryZanNum = (Te...]]></description><category></category></item><item><title><![CDATA[【Android】Android Studio 查找工程中的无用资源文件和无用类文件]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/83787155</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/83787155</guid><author>louislrt</author><pubDate>Tue, 06 Nov 2018 15:07:48 +0800</pubDate><description><![CDATA[当项目开发时间越来越久，资源不断更新的时候，有时我们的资源文件和自定义的类文件会越来越多，而且没有去定时的整理。这时会造成几个问题：

1、资源文件过多，打包时apk会变大

2、无效类过多时，对于维护来说比较耗时

3、在当前工程上继续扩展有时会造成理解上的困难等等

使用Android Studio可以帮助我们快速定位我们工程中的无效资源和类文件。

Step1：在工具栏中找到Analyze菜...]]></description><category></category></item><item><title><![CDATA[【Android】关于在Activity中申请权限时出现“Can not find Symbol Manifest.permission.XXXX”问题处理]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/83624388</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/83624388</guid><author>louislrt</author><pubDate>Thu, 01 Nov 2018 18:02:26 +0800</pubDate><description><![CDATA[在开发时直接调用MainFest.permission.XXXX用于权限申请时会出现Can not find Symbol Mainfest.permission.XXXX的问题，如下图所示。



 解决方案如下：

在Mainfest.permission.XXXX之前增加android.如下段代码所示。


private void requestPermission() {
       ...]]></description><category></category></item><item><title><![CDATA[【Android】保持屏幕常亮唤醒状态]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/83019533</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/83019533</guid><author>louislrt</author><pubDate>Thu, 11 Oct 2018 21:56:36 +0800</pubDate><description><![CDATA[在开发过程中有时会用到保持屏幕常亮，主要用电源控制来实现，具体实现如下：
第一步：  首先添加权限：
&amp;lt;uses-permission android:name=&quot;android.permission.WAKE_LOCK&quot;&amp;gt;&amp;lt;/uses-permission&amp;gt;
第二步：代码实现如下：
 


public class ScreenActivity extends Activ...]]></description><category></category></item><item><title><![CDATA[【Android】Thread与Runnable]]></title><link>https://blog.youkuaiyun.com/louislrt/article/details/82900006</link><guid>https://blog.youkuaiyun.com/louislrt/article/details/82900006</guid><author>louislrt</author><pubDate>Sat, 29 Sep 2018 20:43:57 +0800</pubDate><description><![CDATA[一、基本概念

        Android中的多线程主要是为了操作一些耗时的工作，防止其将主程序进行阻塞，与Java一样两种方式：1、继承Thread 2、实现Runnable接。但是Android与Java的多线程有一点区别是Android中的更新UI必须在主线程中进行，否则抛出异常，因为Android的UI是线程不安全的。

1、Thread类

       Android中的Threa...]]></description><category></category></item></channel></rss>