自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

转载 浅谈Java中的初始化和清理

引言  这篇文章我们主要介绍Java初始化和清理的相关内容,这些内容虽然比较基础,但是还是在这边做一个简单的总结,方便以后查阅。初始化过程  Java尽力保证:所有变量在使用之前都会得到恰当的初始化(对于方法的局部变量,Java会以编译时错误的形式来提醒程序员进行初始化)。  1、类数据成员的初始化  类成员初始化过程是这样的:当我们实例化一个对象时,编译器会首先执行...

2017-03-19 18:02:00 134

转载 浅谈Java中的==和equals

引言  最近在看TIJ,看到==和equals相关内容,今天就来简单的总结下。关系操作符==  书中对关系操作符的描述是这样的:"关系操作符生成的是一个boolean结果,它们计算的是操作数的值之间的关系",简单的说就是比较值是否相等。下面我们通过简单的例子来体会下: 1 int a=5; 2 int b=5; 3 //true 4 System.out....

2017-03-03 17:22:00 115

转载 Android下基于线程池的网络访问基础框架

引言  现在的Android开发很多都使用Volley、OkHttp、Retrofit等框架,这些框架固然有优秀的地方(以后会写代码学习分享),但是我们今天介绍一种基于Java线程池的网络访问框架。实现思路及实现  APP界面上面的数据都是通过网络请求获取的,我们能不能将网络请求依次入队,然后配合着Java线程池,让线程依次处理我们的请求,最后返回结果给我们。下面我们先来看一...

2017-02-16 10:40:00 196

转载 浅谈Android View滑动冲突

引言  上一篇文章我们从源码的角度介绍了View事件分发机制,这一篇文章我们就通过介绍滑动冲突的规则和一个实例来更加深入的学习View的事件分发机制。1、外部滑动方向和内部滑动方向不一致  考虑这样一种场景,开发中我们经常使用ViewPager和Fragment配合使用所组成的页面滑动效果,很多主流的应用都会使用这样的效果。在这种效果中,可以使用左右滑动来切换界面,而每一个界...

2017-02-08 22:03:00 122

转载 Android View事件分发源码分析

引言  上一篇文章我们介绍了View的事件分发机制,今天我们从源码的角度来学习下事件分发机制。Activity对点击事件的分发过程  事件最先传递给当前Activity,由Activity的dispatchTouchEvent进行事件分发,具体的工作是有Activity内部的Window来完成的。Window会将事件传递给DecorView,DecorView一般就是当前界面...

2017-02-08 17:33:00 53

转载 浅谈Android View事件分发机制

引言  前面的文章介绍了View的基础知识和View的滑动,今天我们来介绍View的另一个核心知识,View的事件分发机制。点击事件的传递规则  所谓的点击事件的分发机制,其实就是对MotionEvent事件的分发过程,当一个MotionEvent产生以后,系统需要把这个事件传递给一个具体的View,这个传递的过程就是分发过程。点击事件的分发主要由三个很重要的方法来共同完成的...

2017-02-07 16:27:00 119

转载 Android弹性滑动的三种实现方式

引言  上一篇文章我们介绍了实现弹性滑动的三种方式,但仅仅是给出了代码片段和方法理论。今天我们结合一个具体的例子来谈一下如何使用这三种方法来实现弹性滑动。今天我们的例子是仿IOS的下拉操作,我们知道Android系统ListView之类的控件的是不存在下拉操作的,IOS系统大多数界面都可以下拉,然后缓缓恢复,今天我们的例子就是简单的仿IOS的这种效果。一些准备工作  我们自定...

2017-01-24 10:11:00 459

转载 浅谈Android View滑动和弹性滑动

引言  View的滑动这一块在实际开发中是非常重要的,无论是优秀的用户体验还是自定义控件都是需要对这一块了解的,我们今天来谈一下View的滑动。View的滑动  View滑动功能主要可以使用3种方式来实现;第一种是通过View的scrollTo/scrollBy方法来实现滑动。第二种是通过动画给View添加平移效果来实现滑动。第三种就是通过修改View的LayoutParam...

2017-01-20 10:00:00 115

转载 浅谈Android View的定位

引言  今天我们来介绍Android坐标系统和View的定位,当然也会介绍View的滑动相关话题。下面让我们开始介绍吧。View的基础知识  View是Android中所有控件的基类,无论是TextView、Button、还是RelativeLayout和ListView它们共同的基类都是View。View是一种界面层控件的抽象,它代表了一个控件。ViewGroup翻译过来是...

2017-01-19 21:46:00 279

转载 阿里云推送SDK在某些机型(某米为主)下崩溃问题的解决方法

引言  最近APP上线,遇到一个比较诡异的问题。最后竟然和dex文件有关,也是醉了,看来还得深入底层学习啊。问题描述  在集成阿里推送SDK时,需要在Application中进行初始化,大多数Android手机都是OK的。唯独红米/小米手机在初始化的的时候报错。。。截图如下:  在截图中我们看到,代码在initCloudChannel中发生了异常,异常是NoClass...

2017-01-06 14:42:00 149

转载 浅谈Android样式开发之layer-list

引言  在开发某些有层叠效果App时,我们第一个想到的就是让UI进行切图。下面我们来这样的一个例子。如图所示:  上图Tab的背景效果,和带阴影的圆角矩形,是怎么实现的呢?大部分的人会让美工切图,用点九图做背景。但是,如果只提供一张图,会怎么样呢?比如,中间的Tab背景红色底线的像素高度为4px,那么,在mdpi设备上显示会符合预期,在hdpi设备上显示时会细了一点点,在xh...

2016-12-19 10:23:00 123

转载 浅谈Android样式开发之布局优化

引言  今天我们来谈一下Android中布局优化常用的一些手段。官方给出了3种优化方案,分别是</include>、</viewstub>、</merge>标签,下面我们就来介绍这些标签。include标签  include标签能够重用布局文件,我们在开发中经常有一些布局是通用的,比如每一个页面的头部和尾部,我们可以将其分离到独立的文件中,...

2016-12-16 16:05:00 69

转载 浅谈Android样式开发之View Animation (视图动画)

引言  一个用户体验良好的App肯定少不了动画效果。Android为我们提供了2种动画框架,分别是视图动画(View Animation)和属性动画(Property Animation)。视图动画比较简单,只能应用于各种View,可以做一些位置、大小、旋转和透明度的简单转变。属性动画则是在Android 3.0引入的动画体系,提供了更多特性和灵活性,也可以应用于任何对象,而不只是V...

2016-12-15 16:19:00 106

转载 浅谈Android样式开发之selector

引言  上一篇Android UI中文章我们详细介绍了Android中shape标签的使用。通过shape标签我们可以定义矩形、椭圆、环形、直线等效果。不过shape只能定义单一的形状,在实际开发中,我们经常需要有一些交互性的体验。例如,按钮按下时的效果,ListView中Item被选中时的样式。这些固然可以通过写Java逻辑代码来实现,但是Android系统为我们定义了select...

2016-12-15 10:29:00 70

转载 浅谈ListView滑动隐藏显示ToolBar

引言在App日益追求体验的时代,优秀的用户体验往往会使产品脱颖而出。今天我们就来介绍一种简单的滑动ListView来显示或者隐藏ToolBar的功能。布局文件 下面我们来看一下这个主界面的布局文件。在这个布局文件中,主要是一个ListView控件和一个ToolBar控件。布局如下: 1 <?xml version="1.0" encoding=...

2016-12-13 11:52:00 93

转载 浅谈ScrollView嵌套ListView及ListView嵌套的高度计算

引言  在Android开发中,我们有时会需要使用ScrollView中嵌套ListView的需求。例如:在展示信息的ListView上还有一部分信息展示区域,并且要求这部分信息展示区域在ListView信息比较多的时候也是可以滑动的,而不是固定不变的。这时,我们一般会将ScrollView和ListView嵌套在一起使用。但是这会导致ListView展示不全,然后也会有滑动冲突问题...

2016-09-23 15:25:00 75

转载 Android中仿IOS提示框的实现

前言  在Android开发中,我们有时需要实现类似IOS的对话框。今天我就来总结下,如何通过自定义的开发来实现类似的功能。自定义Dialog  我们知道Android中最常用的对话框就是Dialog及其派生类。这次我们通过组合的方式来实现一个类似IOS对话框的效果。我们先来看一下布局效果,这个相信大家都能弄出来,在这里我就贴一下最后的效果图(注意:对话框的边缘是圆角的)。...

2016-09-18 17:19:00 513

转载 浅谈Android中拍照、从相册选择图片并截图相关知识点

前言  我们在Android开发中经常会需要使用相机或者从相册中选取图片的情况,今天就把这里面相关的知识点总结下,方便以后开发的时候使用。1、相机拍照并可自定义截图功能  我们先来看如何使用Intent来打开照相机,相信这段代码大伙应该很熟悉了。代码如下:1 //打开照相机,进行拍照2 intent = new Intent(MediaStore.ACTION_I...

2016-09-18 15:16:00 184

转载 浅谈Android下的Bitmap之大Bitmap加载

引言  我们常常提到的“Android程序优化”,通常指的是性能和内存的优化,即:更快的响应速度,更低的内存占用。Android程序的性能和内存问题,大部分都和图片紧密相关,而图片的加载在很多情况下很用到Bitmap(位图)这个类。而由于Bitmap自身的特性(将每个像素的属性全部保存在内存中),导致稍有不慎就会创建出一个占用内存非常大的Bitmap对象,从而导致加载过慢,还会有内...

2016-03-08 20:42:00 92

转载 浅谈Android中的startActivityForResult和setResult方法

引言  我们知道,如果想打开一个新的Activity我们可以使用startActivity方法。今天我们介绍的startActivityForResult不仅可以打开全新的Activity,而且当新的Activity关闭后,父Activity可以接收到新窗口设置的值。这篇文章我们就来介绍下startActivityForResult和setResult这两个方法。下面来看例子吧。...

2016-02-19 11:32:00 217

转载 浅谈Android中layout_weight

引言  在开发android过程中,我们经常需要对界面进行按比例进行布局,我们一般都会使用layout_属性来进行设置。今天这篇文章我们就来简单介绍下layout_weight的使用和布局原理。随着做项目经验的积累,该篇博文可能会时时更新。LinearLayout下使用layout_weight  今天我们先来介绍下在LinearLayout下使用layout_weight的...

2016-02-01 16:57:00 75

转载 浅谈Android中Activity的生命周期

引言  我想对于Android开发人员来说,Activity是再熟悉不过了,今天我们就来探讨下Activity的生命周期。熟悉的掌握Activity对于开发健壮的Android应用程序来说至关重要。下面就开始我们的探索之旅吧。Activity生命周期初探  我们来看一下这一张经典的生命周期流程图:  相信不少朋友也已经看过这个流程图了,也基本了解了Activity生...

2016-01-28 15:27:00 75

转载 探索ASP.NET MVC框架之控制器的查找与激活机制

引言  前面一篇博文我们介绍了MVC框架的路由机制,我们知道一个URL请求如何从ASP.NET处理管线到达了IHttpHandler实例(MvcHandler)。今天我们从MvcHandler来进行下一步骤的分析,看看MVC框架是如何找到指定的控制器并且激活(创建)控制器实例的。一切从MvcHandler的ProcessRequest方法开始(获取控制器工厂实例)  我们知道...

2016-01-26 10:01:00 113

转载 探索ASP.NET MVC框架之路由系统

引言  对于ASP.NET MVC的路由系统相信大家肯定不陌生。今天我们就深入ASP.NET的框架内部来看一下路由系统到底是怎么通过我们给出的地址(例如:/Home/Index)解析出Controller和Action。今天的这一篇文章我们就深入框架内部,看看里面的流程。UrlRouteModule介绍  ASP.NET MVC本质上是通过IHttpModule和IHttpH...

2016-01-19 19:10:00 75

转载 浅谈JavaScript中的defer,async

引言  开始重读<<JavaScript高级程序设计>>一书,看到关于JavaScript中关于defer、async的部分。网上查询了点资料,觉得蛮好的。现在总结下。defer/async(Html5新增)  首先我们来看一下在<script>标签中如何使用这两个属,如下:1 <script type="text/javas...

2016-01-12 17:23:00 84

转载 JavaScript中一些怪异用法的理解

引言  JavaScript这门语言有些场合的用法还是比较怪异的。这篇文章会尽量将这门语言特有的一些比较特殊的用法收集在一起。就当是平时开发时需要注意的地方吧。特殊用法收集  1、!!用法  在JavaScript中经常看到判断一个对象是否有某一个属性或者在进行客户端检测的时候会出现!!这个用法。相信大家都看到过var isIE=!!document.all这样的代码把。...

2015-12-25 15:22:00 81

转载 浅谈T-SQL中的派生表和CTE

引言  表表达式是一种命名的查询表达式,代表一个有效的关系表。MSSQL支持4种类型的表表达式,它们分别是:派生表、公用表表达式(CTE)、视图以及内联表值函数。表表达式并不是物理上真实存在的对象,它们是虚拟的。对于表表达式的查询在数据库引擎内部都会转化为底层对象的查询。使用表表达式通常是体现在代码的逻辑方面,而不是性能方面。下面就让我妈来详细介绍每一种类型吧。派生表  派生...

2015-12-15 16:50:00 128

转载 浅谈T-SQL中的子查询

引言  这篇文章我们来简单的谈一下子查询的相关知识。子查询可以分为独立子查询和相关子查询。独立子查询不依赖于它所属的外部查询,而相关子查询则依赖于它所属的外部查询。子查询返回的值可以是标量(单值)、多值、或者整个表。下面来详细介绍子查询的相关内容。独立子查询  独立子查询是独立于外部查询的子查询。在逻辑上,独立子查询在执行外部查询之前只需要先执行一次,接着外部查询使用子查询的...

2015-12-14 15:59:00 119

转载 浅谈T-SQL中的特殊联结

引言  上一篇博客我们介绍了交叉联接,内联接,外联接3种基本的联接操作。这一篇文章我们介绍一些特殊的联接操作。组合联接  组合联接就是联接条件涉及到联接两边的多个列的查询。当需要根据主键-外键关系来联接两个表时,而且主外键关系是组合的。这时候就需要使用组合联接。下面咱们来看一个例子:  例如:我们现在有两张表T1,T2。假设T2表上我们定义了外键(C1,C2),这个外键...

2015-12-14 11:19:00 70

转载 浅谈T-SQL中的联接查询

引言  平时开发时,经常会使用数据库进行增删改查,免不了会涉及多表联接。今天就简单的记录下T-SQL下的联接操作。联接类型及其介绍  在T-SQL中联接操作使用的是JOIN表运算符。联接有三种基本的类型,分别是:交叉联接、内联接和外联接。这三种联接的区别在于它们的逻辑查询处理步骤不同。每一种联接都有一套不同的步骤。  交叉连接:  只有一个步骤:笛卡尔积  内连...

2015-12-10 15:50:00 111

转载 浅谈JavaScript中的定时器

引言  使用setTimeout()和setInterval()创建的定时器可以实现很多有意思的功能。很多人认为定时器是一个单独的线程(之前我也是),但是JavaScript是运行在单线程环境中的,而定时器只是计划代码在未来的某个时间执行。执行时间是不能保证的,在页面的生命周期中,会不断有其他的代码在控制着JavaScript的执行主线程。比如:在页面下载完成以后的JavaScri...

2015-11-13 14:10:00 82

转载 浅谈跨域

引言  使用XHR对象进行Ajax通讯的主要限制,就是跨域的资源访问。默认情况下,XHR只能访问与包含它的页面位于同一个域中的资源。这种安全策略可以预防某些恶意的行为。但是,实现合理的跨与请求对于开发某些应用程序也是必要的。下面,我们就来介绍下关于跨域这方面的知识。CORS简介  CORS(跨域资源共享)是W3C定义的一个工作草案,定义了在必须进行跨域资源访问时,浏览器与服...

2015-11-12 16:17:00 75

转载 浅谈JavaScript中的Ajax

引言  作为一名WEB开发者,我想Ajax技术是一定需要掌握的。你也许平时没有使用JavaScript真正的写过Ajax。但是你一定使用过JQuery里面的相关函数来进行异步调用。今天我们就来介绍下原生Ajax的技术。XMLHttpRequest对象  说到原生的Ajax技术实现,XMLHttpRequest对象是肯定是需要介绍的。历史上IE5是第一个支持XHR的浏览器,在I...

2015-11-09 22:13:00 62

转载 浅谈JavaScript中的能力检测

 引言  我们知道,各个版本的浏览器有着许多不一致性。理想状态下,应该是所有的浏览器都提供一套标准的API接口。但是现实中,各个版本的浏览器存在的怪癖非常多,我们通常都是使用客户端检测来作为补救措施。但是我们应该知道,不到万不得已,不要使用客户端检测。只要能找到更通用的方法,就应该优先采用更通用的方法。总之。先设计最通用的方案,在使用特定于浏览器的技术增强该方案。  1、能力检测...

2015-11-09 14:11:00 64

转载 浅谈JavaScript中的事件

引言  Html页面与JavaScript之间的交互是通过事件来完成的。事件,就是文档或者浏览器窗口中发生的一些特定的交互瞬间。可以使用侦听器(处理程序)来预订事件,以便事件发生时执行相应的代码。这在传统的软件工程中称为观察者模式。事件流  事件流描述的是从页面中接收事件的顺序。但是IE团队和Netscape团队提出了完全相反的事件流概念。IE提出的是事件冒泡流,Netsca...

2015-11-06 14:04:00 81

转载 浅谈JavaScript中闭包

引言  闭包可以说是JavaScript中最有特色的一个地方,很好的理解闭包是更深层次的学习JavaScript的基础。这篇文章我们就来简单的谈下JavaScript下的闭包。闭包是什么?  闭包是什么?通俗的解释是:有权访问另一个函数作用域中变量的函数。创建闭包的常见方式,就是在一个函数内部创建另一个函数(作为其子函数)。下面我们还是以前面的一个例子来简单介绍下: ...

2015-11-02 22:03:00 105

转载 浅谈JavaScript中的继承

引言  在JavaScript中,实现继承的主要方式是通过原型链技术。这一篇文章我们就通过介绍JavaScript中实现继承的几种方式来慢慢领会JavaScript中继承实现的点点滴滴。原型链介绍  原型链作为JS实现继承的主要方式,其基本思想是:利用原型让一个引用类型继承另一个引用类型的属性和方法。我们可以简单回顾下构造函数、原型对象和实例对象之间的关系。每一个构造函数都有...

2015-10-28 16:56:00 65

转载 浅谈JavaScript原型对象与相关设计模式

引言  本文先从介绍JavaScript中基本的几种设计模式开始,最后引出原型对象,然后对原型对象有一个较全面的介绍。1、创建对象的几种设计模式  A、工厂模式  我们知道在JavaScript中创建对象可以使用Object构造函数或者对象字面量的方式。但是使用这些方式有一个问题,就是调用同一个接口创建对象时会出现大量重复的代码。开发人员通过将创建对象的过程细节封装为一个...

2015-10-27 17:09:00 70

转载 浅谈JavaScript中的Function引用类型

引言  在JavaScript中最有意思的就是函数了,这一切的根源在于函数实际上是一个对象。每一个函数都是Function类型的实例,而且都和其他引用类型的实例一样具有属性和方法。函数作为一个对象,因此函数名称实际是一个指向函数对象的指针,不会与某一个函数进行绑定。函数没有重载  前面部分介绍过,函数名称实际是指向函数对象的一个指针,这样就不难理解Javacript中的函数不...

2015-09-14 19:02:00 75

转载 浅谈JavaScript中的this

  引言  JavaScript 是一种脚本语言,因此被很多人认为是简单易学的。然而情况恰恰相反,JavaScript 支持函数式编程、闭包、基于原型的继承等高级功能。本文仅采撷其中的一例:JavaScript 中的 this 关键字,深入浅出的分析其在不同情况下的含义,形成这种情况的原因以及 Dojo 等 JavaScript 工具中提供的绑定 this 的方法。  Java中...

2015-09-06 18:42:00 90

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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