当你的才华还撑不起你的梦想时,你只能一直前进!
正文内容加载中...
posted @ 2017-04-25 18:05 南尘 阅读(759) 评论(0) 编辑
摘要: 坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过。 一般我们被问到这样的问题,通常来说,答案都是否定的,但一定得知道其中的原因,不然回答肯定与否又有什么意义呢。 首先,显而易见这个问题有不少陷阱,比如这个 View 是自己构阅读全文
posted @ 2019-07-18 10:05 南尘 阅读(68) 评论(0) 编辑
摘要: 坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过。 在 Android 开发中,滑动冲突总是我们一个无法避免的话题。而对于解决方案却是众说纷纭。比如 嵌套 ,直接通过相关方法禁掉内部 的滑动; 嵌套 直接把 替换为 等等。但阅读全文
posted @ 2019-07-16 20:42 南尘 阅读(103) 评论(0) 编辑
摘要: `SharedPreferences` 应该是任何一名 Android 初学者都知道的存储类了,它轻量,适合用于保存软件配置等参数。以键值对的 XML 文件形式存储在本地,程序卸载后也会一并清除,不会残留信息。 使用起来也非常简单。 当我们写下这样的代码的时候,IDE 极易出现一个警告,提示我们用 阅读全文
posted @ 2019-07-08 18:40 南尘 阅读(78) 评论(0) 编辑
摘要: 基本上所有 Android 开发都会接触到 、`onDestory() onStart() onStop() onAttachXXX()` 这样的方法群体,今天,笔者就希望用简短的文章对此进行一定讲解。 Activity 中的 onAttachedToWindow 首先在 中我们可以重写 和 这一对阅读全文
posted @ 2019-06-27 21:51 南尘 阅读(86) 评论(1) 编辑
摘要: 在 Android 开发中,我们难免会使用动画来处理各种各样的动画效果,以满足 UI 的高逼格设计。对于比较复杂的动画效果,我们通常会采用著名的开源库: "lottie android" ,或许你会对 lottie 的原理充满好奇,但这并不在我们这篇文章的讨论范围,感兴趣的自行 Google 吧~ 阅读全文
posted @ 2019-06-26 21:26 南尘 阅读(151) 评论(0) 编辑
摘要: Android 从 4.0 开始就提供了手机录屏方法,但是需要 root 权限,比较麻烦不容易实现。但是从 5.0 开始,系统提供给了 App 录制屏幕的一系列方法,不需要 root 权限,只需要用户授权即可录屏,相对来说较为简单。 基本上根据 "官方文档" 便可以写出录屏的相关代码。 屏幕录制的基阅读全文
posted @ 2019-06-25 21:11 南尘 阅读(240) 评论(1) 编辑
摘要: 我们项目采用的是 kotlin && DataBinding 处理的,可能你会疑问,既然用的是 kotlin,为啥没有用 kotlinx?新的页面当然是用的 kotlinx 啦,但我们有相当庞大的历史代码,并且我们的通用 adapter 其实也是基于 DataBinding 来封装的。所以,我们还是阅读全文
posted @ 2019-06-24 19:02 南尘 阅读(147) 评论(0) 编辑
摘要: 这是 "wanAndroid" 每日一问中的一道题,下面我们来尝试解答一下。 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了本系列的「短平快」,今天我们就来第一个主角: 。 保证内存可见性 前面我们讲到:Java 内存模阅读全文
posted @ 2019-06-20 20:46 南尘 阅读(189) 评论(0) 编辑
摘要: 详细说一下 MeasureSpec.UNSPECIFIED "前面的文章" 我留下了一个疑惑,那就是到底为什么 要把子 View 的测量模式强行设置为 ,这不,在鸿洋的 "wanAndroid" 中,他再次提出了这样的问题: MesureSpec.UNSPECIFIED 1. 这个模式什么时候会遇到阅读全文
posted @ 2019-06-19 23:30 南尘 阅读(135) 评论(0) 编辑
摘要: 前面给大家讲解了 "Java 虚拟的内存结构" 以及 "Java 虚拟机的垃圾回收机制" ,我们更加明白了 Java 的内存管理机制,今天我们来讲讲 Java 虚拟机的另外一个高频考点:类加载机制。 JVM 的类加载过程分为加载、验证、准备、解析、初始化 5 个阶段。 加载 加载阶段由类加载器进行负阅读全文
posted @ 2019-06-17 21:13 南尘 阅读(181) 评论(0) 编辑
摘要: 昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: "每日一问:你了解 Java 虚拟机结构么?" 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的。不过在开始之前,我们一定得确定哪些是活着的对象,又有哪些是可以进行回收的。 判断对象是否存活方式 引用计数算法阅读全文
posted @ 2019-06-13 21:18 南尘 阅读(197) 评论(1) 编辑
摘要: 对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 操作去写配对的 代码。而对于我们 Android 乃至 Java 程序员,却总是会因为虚拟机的自动内存管理机制而忽视内存管理的重要性。 经过前面简短的几篇纯 Android 问题,我想再给大家掺杂一点可能阅读全文
posted @ 2019-06-13 09:17 南尘 阅读(253) 评论(0) 编辑
摘要: 前面的文章中着重讲解了 View 的测量流程。其中我提到了一句非常重要的话: View 的测量匡高是由父控件的 和 View 自身的 `LayoutParams 共同决定的。 我们在前面的 "每日一问:谈谈对 MeasureSpec 的理解" 把 MeasureSpec 的重点进行了讲解,其实另外一阅读全文
posted @ 2019-06-12 20:45 南尘 阅读(120) 评论(0) 编辑
摘要: Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要。网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追求短平快,所以本文笔者尽量精简。 想必大多数 Android 开发都知道自定义 View 需要关注的阅读全文
posted @ 2019-06-11 21:49 南尘 阅读(131) 评论(0) 编辑
摘要: 作为一名 Android 开发,正常情况下对 View 的绘制机制基本还是耳熟能详的,尤其对于经常需要自定义 View 实现一些特殊效果的同学。 网上也出现了大量的 Blog 讲 View 的 、`onLayout() onDraw()` 等,虽然这是一个每个 Android 开发都应该知晓的东西,阅读全文
posted @ 2019-06-10 21:38 南尘 阅读(104) 评论(0) 编辑
摘要: 昨天的问题说到了关于 "内存泄漏需要注意的点" ,在文章最后有说到 "LeakCanary" 检测内存泄漏。实际上,我相信绝大多数人也知道甚至使用过这个库。 这个系列通常来说如果发现了不错的资源,会选择直接截取部分拿过来,所以对于文章底部的参考链接一般都是非常不错的,可以直接去看哟~ LeakCan阅读全文
posted @ 2019-06-06 16:57 南尘 阅读(193) 评论(0) 编辑
摘要: 内存泄漏对每一位 Android 开发一定是司空见惯,大家或多或少都肯定有些许接触。大家都知道,每一个手机都有一定的承载上限,多处的内存泄漏堆积一定会堆积如山,最终出现内存爆炸 OOM。 而这,也是极有可能在 Android 面试中一道常见的开放题。 内存泄漏的根本原因是 一个长生命周期的对象持有了阅读全文
posted @ 2019-06-05 17:43 南尘 阅读(143) 评论(0) 编辑
摘要: 最近公司的项目升级到了 9.x,随之而来的就是一大波的更新,其中有个比较明显的改变就是很多板块都出了一个带标签的设计图,如下: 怎么实现 看到这个,大多数小伙伴都能想到这就是一个简单的图文混排,不由得会想到鸿洋大佬的图文并排控件 "MixtureTextView" ,或者自己写一个也不麻烦,只需要利阅读全文
posted @ 2019-05-21 21:23 南尘 阅读(404) 评论(14) 编辑
摘要: 南尘的 2018,阅读本文大约需要一整年 嗨,陌生人,你是我的朋友吗?我是南尘,还是那个在网上习惯加个 2251 后缀的南尘。 你最近过的怎么样呀?应该还好吧。有没有好好工作,好好学习,好好生活呀? 距离南尘的上一篇原创,好像得有俩月了吧,好像,在 2018 年,南尘就一直在玩消失。 刚刚看了下 "阅读全文
posted @ 2019-01-16 14:29 南尘 阅读(783) 评论(3) 编辑
摘要: 半个月前,和我的终极技术目标扔物线朱凯一拍即合,到了他所开展的 HenCoder Plus 课程给大家分享了 1 个多小时的「模拟面试」心得,也顺便听了几次凯哥的课程,感觉真的挺用心的。自己也希望能一直不忘初心,在技术领域像凯哥一样,认真并且锲而不舍。准备了许久,主要是为了做这一次分享。 自己下来其阅读全文
posted @ 2018-11-19 09:41 南尘 阅读(378) 评论(1) 编辑
摘要: 最近也是终于开启了代码编写之旅,我只能默默地说一句,写代码的感觉,简直不能再爽! 不过也由于 git 的分支管理蛋疼懵逼很久,所以必须记录以及和大家分享一下本次坑爹的旅行。 写在前面 每个公司相比都有自己的 git 分支管理规范,在项目组中开发人员较多的时候,这个就显得尤为重要。所以我们必须得掌握 阅读全文
posted @ 2018-09-04 14:08 南尘 阅读(1900) 评论(12) 编辑
摘要: Kotlin 被作为 Google 官方语言也有一年多了,但除了刚宣布那个月极度火爆以外,后面生活又回归了平静。不少小伙伴紧跟 Google 爸爸的步伐,也对 Kotlin 有了或多或少的了解,GitHub 上也有了相当一部分的 Kotlin 开源项目。 但或许是后知后觉,依然还是有相当一部分小伙伴阅读全文
posted @ 2018-08-30 17:28 南尘 阅读(713) 评论(1) 编辑
摘要: 说说入职两日的感受 伙计们,做好准备吧,南尘最近一定不可能日更的,不过不保证后面还会像现在这样熟悉架构熟悉代码到极度困,然后就想到我亲爱的朋友们,然后再和你们吹会儿逼。 前面给大家讲过,选择了待遇相对偏低的咕咚,主要是因为一面的面试官,给了我很强的震撼力,让我如同找到了同路人:同样在为代码质量而疯狂阅读全文
posted @ 2018-08-22 08:44 南尘 阅读(4948) 评论(20) 编辑
摘要: 面试 19:输出数组中出现次数超过一半的数字(剑指 Offer 26 题) 上一篇推文给大家留下的习题来自于《剑指 Offer》第 29 题:数组中超过一半的数字,不知道各位去思考了么? 面试题:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字并输出。比如 {1,2,3,2,2,2,1}阅读全文
posted @ 2018-08-02 09:57 南尘 阅读(666) 评论(0) 编辑
摘要: 面试 18:复杂链表的复制(剑指 Offer 第 26 题) 在上一篇推文中,我们留下的习题是来自《剑指 Offer》 的面试题 26:复杂链表的复制。 请实现复杂链表的复制,在复杂链表中,每个结点除了 next 指针指向下一个结点外,还有一个 sibling 指向链表中的任意结点或者 NULL。比阅读全文
posted @ 2018-08-01 08:51 南尘 阅读(416) 评论(1) 编辑

写不完的矫情,做不完的开源

点击进入我的GitHub页
南 尘
主 页
优美钢琴曲合集-南尘.mp3                    感谢您阅读我的博客,如果您现在工作、学习累了或者疲惫了,不妨聆听一下音乐,它能够减轻你的疲劳,还能够带给您一种舒适愉悦的心情。(样式取自博客园-欲泪成雪)