自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李牧羊的专栏

http://www.limuyang.cc/

原创 阅读分析snabbdom源码

尤大在官宣Vue 2.0的时候这么说过: 渲染层基于一个轻量级的 Virtual DOM 实现进行了重写,该 Virtual DOM 实现 fork 自 snabbdom。新的渲染层相比 v1 带来了巨大的性能提升,也让 Vue 2.0 成为了最快速的框架之一。 那么对于想要深入了解Vue源码的...

2019-03-05 18:23:44 337 0

原创 京晚8点--H5单页面手势滑屏效果实践

项目背景 京晚8点作为内容平台重点打造的内容IP,通过优质的内容形式,潜移默化中让用户了解产品,建立对京东开始玩内容的心智和认知,目前这个项目已经迭代到第5期,最开始的时候我们的首页效果是一个卡片形式的时间轴,首页的背景大图会随着时间轴拖动到不同的卡片而进行切换: 从第5期开始,我们采...

2018-08-27 23:21:59 721 0

原创 video标签沉浸式播放解决方案

“沉浸播放式”这个概念是我从Android开发里面的沉浸式引申过来的一个概念,沉浸式其实就是隐藏页面顶部的status bar和底部的navigation bar之后呈现出来的页面,一般用户很容易把沉浸式状态栏和透明化状态栏混为一谈,他们的区别如下: 沉浸式状态栏 透明化状态栏 那...

2018-07-23 00:06:48 1665 1

原创 vue-router中使用EventBus传值需要注意到的问题

最近负责开发一个视频相关的项目,要用到vue-router,同时涉及到一些共有状态管理,但是少量的状态又不想用vuex,于是用到了EventBus,一般来说, 我们用EventBus的步骤如下: - 首先新建一个js用来创建我们的EventBus,如Bus.js import Vue fr...

2018-05-29 21:59:22 4251 2

原创 深入浅出pwa

PWA的概念 PWA的全称为:Progressive Web Apps(渐进式Web Apps),是Google提出的,可以带来突破性体验的Web应用。 Google所阐述的PWA的主要特点如下: - 渐进式 - 适用于选用任何浏览器的所有用户,因为它是以渐进式增强作为核心宗旨来开发的。 ...

2018-05-25 19:03:05 771 0

原创 webpack从0到1使用指南

文章同步发表在:博客地址 为什么要用webpack 关于为什么要使用webpack,我比较认同的一种说法是: webpack可以很好地管理你开发中遇到的各种HTML、JS、CSS以及各种图片资源文件,同时对应不同的资源,webpack还提供了对应的Loaders将其进行转化为适用于...

2018-05-19 16:17:03 375 0

原创 不吹不黑聊聊前端框架--尤雨溪Live整理

最近买了尤雨溪大大的Live:不吹不黑聊聊前端框架,这场Live让我的前端思维到了前所未有的高度:当我们身为前端开发萌新,在前端人才金字塔的浮动与挣扎中思考该学什么框架、该如何入门前端、又遇到学习瓶颈怎么办的时候,正是这些业界大牛们用自己的行动引导着我们,有如尤大所说:多思考场景需求,多看看技术到...

2017-11-10 23:20:50 1188 0

原创 javascript中call、apply、bind方法的使用

context的概念在知道我们为什么要使用call、apply、bind方法之前,我觉得有必要先了解一下context的相关概念,通常context的作用是取决于函数将如何被调用,当函数作为对象的方法调用时,this就会被设置为调用方法的对象: var object = { foo...

2017-11-08 20:52:40 251 0

原创 JavaScript中的立即执行函数

通常我们声明一个函数有以下几种方式:// 声明函数f1 function f1() { console.log("f1"); } // 通过()来调用此函数 f1(); //一个匿名函数的函数表达式,被赋值给变量f2: var f2 = function() { ...

2017-09-11 21:31:35 387 0

原创 Handler机制从入门到放弃(二)

从注释看起Hander的源码只有不到800行,而且大多数代码相对来说还是比较好理解的,尤其是相对于其他更加接近底层的代码来说,在看源码时候有一点挺重要的就是不要忽略注释的作用,Handler类开头有这么几行注释: <p>There are two main uses for a Han...

2016-10-31 10:09:37 1353 0

原创 Handler机制从入门到放弃(一)

闲来无事,准备好好梳理一下Handler机制,之前分析过没有写成博客,结果就是慢慢的淡忘了,这次趁着刚分析完,赶紧写下来。在开始分析之前先打打基础,理解理解什么是线程以及什么是Handler,这里大部分内容引用一篇来自伯乐在线的文章,因为看来看去关于基础的部分这个人已经说得很好了,我就负责把主要的...

2016-10-31 10:08:40 874 0

原创 人生苦短,我用Python--分分钟下载知乎美图给你看

起上次说了要爬知乎的图片,于是花了一下午的时间去完成这件事,发现暂时接触到的爬虫总是逃脱不了一个规律: 模拟登陆 获取真实网页HTML源代码 解析获取到的网页源代码 获取想要的资源(下载到某个文件夹或者输出到表格中整合起来) 也许和我说的有一些出入,应该是刚学这个东西的原因,接下来还想研究一下多线...

2016-08-11 11:28:15 9212 25

原创 人生苦短,我用Python--一起来爬知乎娘

上次爬了教务处的成绩,接下来想去爬一爬知乎娘,好像大家都很喜欢爬知乎娘,GitHub上貌似已经有人把获取各种知乎数据的操作封装好了:zhihu-python ,但是良辰表示还是想自己试一试,我就爬点简单的,难度大的我也不会,我瞄准的是我自己关注的人的数据,差不多就这些东西: 关注者 / 提问...

2016-08-09 09:41:41 4349 11

原创 人生苦短,我用Python--爬虫模拟登陆教务处并且保存数据到本地

刚开始接触Python,看很多人玩爬虫我也想玩,找来找去发现很多人用网络爬虫干的第一件事就是模拟登陆,增加点难度就是模拟登陆后在获取数据,但是网上好少有Python 3.x的模拟登陆Demo可以参考,加上自己也不怎么懂Html,所以这第一个Python爬虫写的异常艰难,不过最终结果还是尽如人意的,...

2016-08-02 10:01:52 6696 2

转载 Android Design Support Library--Translucent System Bar 的最佳实践

引言本来是想自己写一些关于透明状态栏或者沉浸式状态栏实现的文章,但是在简书上关注了D_clock爱吃葱花之后发现他的一篇关于透明状态栏实现的文章写的面面俱到,于是就在征询作者同意的情况下把这篇文章加入这一系列。在开始之前我们先陈述一个事实:其实很多人分不清透明化状态栏(Translucent Ba...

2016-07-11 17:11:49 1071 2

原创 Android Design Support Library--FloatingActionButton及其Behavior的使用

引言如果说前面提到的TextInputLayout、SnackBar的应用还不是很常见的话,那么今天提到的FloatingActionButton绝对是一个随处可见的Material Design控件了,无论是我们常用的知乎、印象笔记或者是可爱的谷歌全家桶套装都可以见到FloatingAction...

2016-05-11 20:22:17 9621 1

原创 Android Design Support Library--简约而不简单的SnackBar

引言在之前我有提到这一篇Android Design Support Library系列文章是关于SnackBar的,但是由于要用到CoordinatorLayout所以先翻译了一篇相关文章,如果还不了解的可以先看一下Android Design Support Library–使用Coordin...

2016-05-07 13:13:17 3253 0

翻译 Android Design Support Library--使用CoordinatorLayout来处理滚动

引言本来这一次想写关于SnackBar的,但是因为官方都推荐使用Material Design控件最好使用CoordinatorLayout 来作为它们的父布局,所以就先讲解一下CoordinatorLayout 的知识,本来想自己去理解的,但是发现网上已经有一份很好的材料了就给搬过来了,原文是C...

2016-05-03 18:11:41 4441 0

原创 Android Design Support Library--TextInputLayout的使用

本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 引言Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的Android Design Support Library,Android Design Suppo...

2016-04-30 00:22:35 12289 8

原创 仿网易云音乐部分UI实现

引言有一段时间闲着没事做,突发奇想,于是就去防了部分网易云UI的界面,最开始是想仿成这个样子: 于是反编译了网易云的源文件,果不其然混淆的很彻底,表示并不能看懂,诺: 里面的代码大部分都是smali语法,也就是这样的:.class public La/auu/a; .super Ljava/l...

2016-04-23 15:40:36 15684 4

转载 公共技术点之 Java 反射 Reflection

1. 了解 Java 中的反射1.1 什么是 Java 的反射 Java 反射是可以让我们在运行时获取类的函数、属性、父类、接口等 Class 内部信息的机制。通过反射还可以让我们在运行期实例化对象,调用方法,通过调用 get/set 方法获取变量的值,即使方法或属性是私有的的也可以通过反射的形...

2016-04-21 14:04:03 574 0

原创 怎样的Android开发毕业生可以算达到优秀的水平

从知乎上看到这个问题,其实我也很想知道怎么样的Android开发毕业生才算达到了优秀的水平,于是找到了一份15年腾讯的Android开发毕业生的经验总结,然后看到了这么一段话: 如果想变得优秀那就去看那些优秀的人在学什么,做什么,想尽一切办法和他们交流;多出去看看这个世界,然后把自己逼到往死里...

2016-04-20 19:58:47 971 0

原创 Eclipse项目红色感叹号,JAR包无报错

今天做项目的时候项目莫名出现红色感叹号,JAR包也没有报错,但是Marker视图下problem出现这么一行语句:Archive for required library: ‘libs/WBShareActivity.java’ in project ‘你的项目名’ cannot be read ...

2016-04-20 15:13:56 8050 0

原创 使用ViewPager动画来做出不一样的引导页

就算Google从很早开始就自带了设置引导页动画的接口,但是就我目前看来市面上使用引导页动画的还是很少的,也不知道是为什么,一想到Material Design的使用率也这么少表示很心塞。 首先来看看市面上千篇一律的引导页效果,诺: 很单调对不对,你们没看吐我都看吐了,再看一份加了引导页动画效...

2016-04-16 11:57:42 8001 32

原创 svn导包遇到case expressions must be constant expressions

今天项目组有新项目做,我从SVN上把包导入eclipse出了这么一个毛病,在好几个Switch语句下都出现了这么一个问题: case expressions must be constant expressions,图如下: 于是就上网找,发现解决方案如下: 右键项目找到Properti...

2016-04-12 21:59:18 1235 0

原创 为什么我们创建ListView的ViewHolder要使用static去声明

引言最近做项目写多了ListView很好奇为什么它的ViewHolder要使用static关键字去声明,于是在网上找答案,整理如下: 大致意思就是:总体上来说,当一个内部嵌套类不依赖于外部类的时候,我们就会把它声明为静态的,在我们的案例中,ViewHolder从来没有使用到适配器类(外部类)的任何...

2016-04-07 11:28:10 1667 0

原创 ViewGroup的事件分发机制

引言上一次我在View的事件分发机制里完整的分析了View对于触屏点击事件的分发过程,接下来继续探索之旅,紧接着分析ViewGroup的事件分发机制,ViewGroup其实就是一组View的集合,它也是继承于View的,它本身也可以包含View和ViewGroup,方便起见我们还是延用上一次的布局...

2016-04-04 21:08:55 1555 0

原创 View的事件分发机制解析

引言Android事件构成 在Android中,事件主要包括点按、长按、拖拽、滑动等,点按又包括单击和双击,另外还包括单指操作和多指操作。所有这些都构成了Android中的事件响应。总的来说,所有的事件都由如下三个部分作为基础: 按下(ACTION_DOWN) 移动(ACTION_MOVE) 抬...

2016-04-03 22:41:21 4846 2

原创 Android回调函数机制那点事

引言 在Android的学习过程中经常会听到或者见到“回调”这个词,那么什么是回调呢?所谓的回调函数就是:在A类中定义了一个方法,这个方法中用到了一个接口和该接口中的抽象方法,但是抽象方法没有具体的实现,需要B类去实现,B类实现该方法后,它本身不会去调用该方法,而是传递给A类,供A类去调用,这...

2016-04-01 23:12:26 5113 0

转载 仿最美应用-每日最美 钢琴律动效果(二)

一、可以侧拉刷新加载的ViewPager 首先需要添加ViewPager,这个是一个可以侧拉加载刷新的ViewPager,这里最美使用的是GitHub上的一个开源项目: Android-PullToRefresh 修改我们的activity_main.xml布局文件:<?xml ver...

2016-03-27 15:46:29 1259 2

转载 仿最美应用-每日最美 钢琴律动效果(一)

前言 项目GIthub地址 原先我并不知道有最美应用这么一个app,但是这个app却被我们的产品经理和老板所推崇,每次开会时都要拿出来说一说这个应用什么什么效果做的好,终于有一天,我们的老板突然和他们说要我们做着这个效果试试看,当时真的是差点吐血,无奈之下进行了反编译,通过一些残留的思路和线索...

2016-03-27 15:32:22 1623 2

转载 Android Fragment 基本介绍

转载来源FragmentAndroid是在Android 3.0 (API level 11)开始引入Fragment的。可以把Fragment想成Activity中的模块,这个模块有自己的布局,有自己的生命周期,单独处理自己的输入,在Activity运行的时候可以加载或者移除Fragment模块...

2016-03-27 15:12:03 433 0

原创 Android开发艺术探索读书笔记(二)

思维导图如下:

2016-03-22 22:11:14 1140 0

原创 Android开发艺术探索读书笔记(一)

思维导图如下:

2016-03-21 21:39:12 657 0

原创 Android精华汇总

公共技术知识点部分 Android Activity生命周期 onCreate中的savedInstanceState有何具体作用 Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组 Android系统架构解析 显而易见的,根据上图自底向上我们知道Android系...

2016-03-15 23:20:42 1731 1

翻译 APP启动页的正确配置方式

在APP的启动页面(Splash Screen)好多都是等待3秒,好一点的还可以跳过,但是有的跳过也是假的按钮。当然像一些大厂的APP,像网易新闻等启动页面都是广告,人家要收广告费的。但是,对于一些普通的APP,有的也出现等待三秒的启动画面,出现一个大大的logo,好像告诉用户他打开的是什么应用,...

2016-03-01 16:54:15 6588 4

转载 Android线程和Handler基础入门

现在大多数的移动设备已经变得越来越快,但是它们其实也不算是非常快。如果你想让你的APP既可以承受一些繁杂的工作而又不影响用户体验的话,那么必须把任务并行执行。在Android上,我们使用线程。端一杯咖啡,然后仔细阅读这篇文章。我会给大家介绍一下线程的概念,还有在Java中怎么使用线程,在线程中怎么...

2016-01-28 14:38:58 441 0

转载 Android的消息处理机制(图+源码分析)——Looper,Handler,Message

转自:http://www.cnblogs.com/codingmyworld/archive/2011/09/12/2174255.html android的消息处理有三个核心类:Looper,Handler和Message。其实还有一个Message Queue(消息队列),但是MQ被封装...

2016-01-27 22:17:08 492 1

原创 Material Design中文版(二)

什么是Material Design 环境 1、三维世界 Material环境处在一个三维的空间,这意味着处在其中的所有物体都具有X、Y、Z的三维坐标属性,Z轴与屏幕的表面垂直对齐,并且向着用户的视角延伸,每个Material元素都在Z轴上占有一个单独的位置,并有一个1dp的标准厚度,等价于在...

2016-01-11 22:07:51 1249 0

原创 Material Design中文版(一)

引言 我们挑战自我,为我们的用户创造了一种崭新的视觉设计语言,不仅结合了好的设计的经典原则,还融入了创新的设计理念,这就是Material Design(质感化设计),这份文档是动态更新的,将会随着我们对Material Design的原则和细节的深入研究而不断地完善。[目标] [原则]目标创...

2016-01-10 14:52:10 2117 0

提示
确定要删除当前文章?
取消 删除