- 博客(26)
- 资源 (14)
- 收藏
- 关注
原创 入坑 Flutter 前你需要知道的一些 XXX
扳指一算,这已经是 Flutter 出道的第三个年头了。这两年来,用它写过几个类似计算器、手电筒、罗盘之类小到不能再小的应用,也算是对其有一点点拙见,本文纯属爽完后的瞎掰,不涉及过多的代码,只对准备入坑或者想要入坑的童鞋简单地聊一聊 Flutter,包括它的基础架构、设计原理、应用场景以及未来发展等等。What is Flutter?Flutter 是什么?套用目前 Flutter 官网的原话...
2019-08-23 08:47:11 4867 7
原创 MacOS 下安装多个版本的 JDK 并统一管理
现在的 MacOS 都不自带 JDK 了,如果你在未安装 JDK 的 MacOS 中执行 Java 命令会出现如下提示:AigeStudio@aige$ java -versionNo Java runtime present, requesting install.然后 MacOS 会提示你 JDK 未安装:点击更多信息的话就会去到 Oracle 的 JDK 下载页让你下载安装,在稍...
2019-08-15 16:27:46 6675
原创 巧用 iTerm2 & zsh & oh-my-zsh 打造炫酷的 MacOS 终端环境
MacOS 系统自带的 Bash 虽然已经很强大,但是对于一些细节功能的支持并不完美,重点是对于一个颜控来说,原生 Bash 真的很丑……可塑性也不高。本文将使用 iTerm2 这款被各路大牛吹爆的 MacOS 平台最好用终端结合 zsh
2019-08-13 19:58:14 18481 1
原创 论Android应用进程长存的可行性
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。 转载或引用前请注明来自AigeStudio 侵权必究 关于爱哥 如何能让我们的应用能够在系统后台持续地运行是一个自Android从娘(ma)胎(bi)里出来时就议论不停的话题,而且这似乎成了一个牛(liu)逼(mang)应用标配的功能。每当有人问起爱哥这个沉重的问题时我都会选择避而不答,原因有二,一是我并不曾深入地研究过相
2016-05-08 22:57:31 41710 56
原创 TabLayout:另一种Tab的实现方式
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵 镇楼在5.0以前我们想要实现像网易新闻客户端那样的的Tab可以有很多种选择:比如古老的TabHost,3.0后ActionBar所提供的Tab,以及各种成熟的Tab开源控件等,都可以直接或间接地实现Tab的效果。然而,对于这样一种使用极多的控
2015-07-30 20:16:07 42486 28
原创 Toolbar:上位的小三
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵 镇楼Toolbar是Android 5.0中新引入的一个控件,其出现的目的就是为了取代ActionBar,在讲解Toolbar之前我们还是来恶补一下关于ActionBar的一些野史,看看为什么Android会在5.0中使用一个全新的控件来取代
2015-07-27 20:15:36 20217 29
原创 Android事件分发完全解析之事件从何而来
上一节Android事件分发完全解析之为什么是她中我们简略地分析了事件分发机制的由来,这里要说明一点,Android(或者说任何的驱动系统)都包含大量不同类型的事件,比如按键啦、轨迹球啦、鼠标啦、触摸啦、红外线啦等等等,这里为了简化问题也为了切合实际,我们只针对触摸事件进行分析,至于其他的一些杂七杂八的事件其实都很好理解就不多说了。
2015-03-30 09:55:01 20205 43
原创 Android事件分发完全解析之为什么是她
记得以前教我code的启蒙老师对我说过,如果你想学习一个新事物只需要三个W:Why、What、How,也就是:为什么?是什么?怎么做?当你搞懂这三个W之后,你对新事物必定会有一个透彻的了解。然而对大多数Student来说他们往往最有兴趣的是“How”也是他们最先接触的一个W,其次则是“What”,而“Why”往往会被选择性地忽略,这也是很多时候我们为什么无法将现有知识水平提升一个层次的根本原因。
2015-03-14 15:53:55 19140 29
原创 自定义控件其实很简单3/4
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼隐约雷鸣 阴霾天空 但盼风雨来 能留你在此隐约雷鸣 阴霾天空 即使天无雨 我亦留此地上一节我们细致地、猥琐地、小心翼翼地、犹如丝滑般抚摸、啊不,是讲解了如何去测量一个布局控件,再次强调,如我之前多次强调那样
2015-02-22 13:20:43 27331 61
原创 为什么我们可以在非UI线程中更新UI
看到这样的标题……估计N多人会说我是逗比…………因为很多盆友在学习Android(特别是从4.0之后开始入门的)的时候都会常看见或听到别人说我们更新UI呢要在UI线程(或者说主线程)中去更新UI,不要在子线程中更新UI,而Android官方呢也建议我们不要在非UI线程直接更新UI,为什么呢?借助Android官方的一句话来说就是:“The Android UI toolkit is not thread-safe and the view must always be manipulated on the
2015-02-03 14:11:34 29066 48
原创 自定义控件其实很简单2/3
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼又要开始鸡冻人心的一刻了有木有!有木有鸡冻! = = ……通过上一节的讲解呢我们大致对Android测量控件有个初步的了解,而此后呢也有不少盆友Q小窗我问了不少问题,不过其实这些问题大多都不是问题,至于到底是不是问题呢,还要等
2015-02-01 22:47:42 23557 50
原创 自定义控件其实很简单7/12
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼要在数量上统计中国菜的品种,在地域上毫无争议地划分菜系,在今天,是一件几乎不可能完成的事……Cut…………抱歉……忘吃药了,再来一遍。如果非要对自定义控件的流程进行一个简单的划分,我会尝试将其分为三大部分:控件的绘制、控件的测
2015-01-22 00:10:45 36477 71
原创 Android翻页效果原理实现之模拟扭曲
上一节我们实现了翻页的曲线效果,但是效果有点小瑕疵不知道大家发现没有:如图,我们发现折叠区域怪怪的,并没有实现我们之前的“弯曲”效果,为什么呢?是计算错了么?其实不是的,我们之前测试的时候使用的将canvas填色,但是这里我们用到的是一张位图,虽然我们的Path是曲线、Region有曲线区域,但是我们的Bitmap是个规规矩矩的矩形啊,怎么弯曲~怎么办呢?说起扭曲,我们首先想到的是dr
2015-01-15 15:19:43 20986 28
原创 Android翻页效果原理实现之曲线的实现
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼上一节我们通过引入折线实现了页面的折叠翻转效果,有了前面两节的基础呢其实曲线的实现可以变得非常简单,为什么这么说呢?因为曲线无非就是在折线的基础上对Path加入了曲线的实现,进而只是影响了我们的Region区域,而其他的什么事
2015-01-14 16:58:49 18320 26
原创 Android翻页效果原理实现之引入折线
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼PS:写得太嗨忘了说明一点,下面文章中提到的“长边”(也就是代码部分中出现的sizeLong)指的是折叠区域直角三角形中与控件右边相连的边,而“短边”(也就是代码部分中出现的sizeShort)则指的是折叠区域直角三角形中与控
2015-01-13 22:40:42 19485 41
原创 Android翻页效果原理实现之翻页的尝试
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼在《自定义控件其实很简单》系列的前半部分中我们用了整整六节近两万字两百多张配图讲了Android图形的绘制,虽然篇幅很巨大但仍然只是图形绘制的冰山一角,旨在领大家入门,至于修行成果就看各位的了……那么这个些列主要是通过前面学习
2015-01-13 16:40:50 25553 46
原创 自定义控件其实很简单1/2
尊重原创转载请注明:From AigeStudio(http://blog.csdn.net/aigestudio)Power by Aige 侵权必究!炮兵镇楼年关将至事情巨多,最近因为安排蓄谋已已久的旅行事宜很久没更我们的系列教程,约莫着有一个月了,这事情多起来啊闲都闲不下来~~那么我们闲话少说,来看看这一节我们的重点,上一节因为之前从未涉及Canvas的clipXXX方法所以我们
2015-01-13 16:09:00 32593 36
原创 自定义控件其实很简单5/12
最近龙体欠安,很多任务都堆着,虽说如此,依然没有停下学习的步伐,虽然偶尔还会有点头痛,但是孤依旧在学习……自赞一个~在1/3中我们结束了全部的Paint方法学习还略带地说了下Matri的简单用法,这两节呢,我们将甩掉第二个陌生又熟悉的情妇:Canvas。Canvas从我们该系列教程的第一节起就嘚啵嘚啵个没完没了,几乎每个View都扯到了它,就像我之前说的那样,自定义控件的关键一步就是如何去绘制
2014-12-16 15:03:51 37633 91
原创 自定义控件其实很简单1/3
前几天身子骨出了点小毛病不爽,再加上CSDN抽风也木有更新,现在补上之前漏掉的1/3上一节结尾的时候我们说到,Paint类中我们还有一个方法没讲setShader(Shader shader)这个方法呢其实也没有什么特别的,那么为什么我们要把它单独分离出来讲那么异类呢?难道它贿赂了我吗?显然不是的,哥视金钱如粪土(我的要求很低,只需要一克反物质即可)!怎么可能做出如此下三滥的事情!之所
2014-12-08 09:32:12 58236 119
原创 自定义控件其实很简单1/4
上一回关羽操刀怒砍秦桧子龙拼命相救,岂料刘备这狗贼耍赖以张飞为祭品特殊召唤黑暗大法师消灭了场上所有逗逼,霎时间血流成河,鲜红的血液与冰冷的大地融合交汇在一起焕发出血液的煞气……那么,问题来了,请问这是使用了哪种PorterDuffXfermode?
2014-11-24 16:45:52 58767 52
原创 自定义控件其实很简单1/6
上一节我们粗略地讲了下如何去实现我们的View并概述了View形成动画的基本原理,这一节我们紧跟上一节的步伐来深挖如何去绘制更复杂的View!通过上一节的学习我们了解到什么是画布Canvas什么是画笔Paint,并且学习了如何去设置画笔的属性如何在画布上画一个圆,然而,画笔的属性并非仅仅就设置个颜色、大小那么简单而画布呢肯定也不单单只是能画一个圆那么无趣,工欲善其事必先利其器,既然想画好图那必
2014-11-20 17:05:04 66690 173
原创 自定义控件其实很简单1/12
自定义View,很多初学Android的童鞋听到这么一句话绝逼是一脸膜拜!因为在很多初学者眼里,能够自己去画一个View绝逼是一件很屌很Cool的事!但是,同样而言,自定义View对初学者来说却往往可望而不可及,可望是因为看了很多自定义View的源码好像并不难,有些自定义View甚至不足百行代码,不可及呢是因为即便看了很多文章很多类似的源码依然写不出一个霸气的View来。这时会有很多前辈告诉你多看
2014-11-17 17:25:19 60294 159
原创 高仿网易评论列表效果之界面分析
Hello大家好我是周杰伦~!@#¥#@¥%¥%……%&*&……**)……*%&¥%#¥!!!!不好意思,刚忘了吃药了~~~~扯正事,前几天有个小哥来面试,因为前些天面试了很多人了实在是有点面试疲劳了,我就干脆问了点基础的知识然后给了他一个上机测试题,这个测试题呢其实也是偶然想到的,就是一个网易新闻客户端的评论列表,见下图:
2014-11-07 12:56:44 13208 21
原创 回调机制详解
今天遇到一位码友问我如何在异步加载完毕后获得异步的返回值,当时我思考了下就让他在异步完成后回调一下将值返回……因为对方是初学者我就给他简单解释了下Android的回调……说了一下午他都没弄明白……原因不是我讲得不够详细而是他陷进了他异步的问题……他把他那个问题和我讲的回调混在了一起……一直跳不出那个思维,其实回调机制很好理解,也基于这个原因,也算为了这位仁兄,我决定用最直白的语言来给大家讲讲And
2014-11-06 22:23:12 17150 43
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人