自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 自定义View之路——Canvas(save,restore,translate,rotate)

这章说Canvas,Paint是画笔,有画笔当然也得有画布才能往上作画了,Canvas就是画布,这很好理解。 Canvas给我们提供了很多实用的API,可以画各种图形,文字,图片等,接下来我会一一介绍。先让我们看一下Canvas的构造(官方文档):Canvas() //Construct an empty raster canvas. Canvas(Bitmap bitmap) //Cons

2016-06-24 15:09:05 1942

原创 Android 自定义View之路——Paint

从今天开始正式写一下有关于自定义View的内容,虽然之前也写过一些自定义View,但是还没有做到信手拈来的程度,所以在闲暇时间把一些重要的API,必要的API都记录下来,在以后用到的时候可以翻阅看看。掌握好自定义View的技术是称为android高手的必经之路,也是很重要的一部分。(自定义View有很多种类,包括组合控件,继承ViewGroup等,这里暂时只介绍继承View 进行各种图形的绘画 on

2016-06-14 18:19:33 456

原创 View的事件分发机制(一)

前言:事件分发机制不仅仅是核心知识点更是难点,不少初学者甚至中级开发者面对这个问题时都会觉得困惑。另外,View的另一个大难题滑动冲突,它的解决方法的理论基础就是事件分发机制,因此掌握好View的事件分发机制是十分重要的。本文将深入介绍View的事件分发机制。点击事件的传递规则在介绍点击事件的传递规则之前,首先我们要明白这里要分析的对象就是MotionEvent,即点击事件。所谓点击事件的事件分发就

2016-04-15 17:30:24 378

原创 View的事件体系——View的位置参数

View的位置主要由它的四个顶点来决定,分别对应于View的四个属性:top、left、right、bottom。其中top是左上角纵坐标,left是左上角横坐标,right是右下角横坐标,bottom是右下角纵坐标。需要注意的是,这些坐标都是相对于View的父容器来说的,因此它是一种相对坐标。需要注意的是,这些坐标都是相对于View的父容器来说的,因此它是一种相对坐标,View的坐标和父容器的关系

2016-04-12 17:24:23 691

原创 IntentFilter的匹配规则

我们知道,启动Activity分为两种,显式调用和隐式调用。二者的区别就不多说了,显式调用需要明确地指定被启动对象的组件信息,包括包名和类名,而隐式调用则不需要明确指定组件信息。原则上一个Intent不应该既是显式调用又是隐式调用,如果二者共存的话以显式调用为主。显式调用很简单,这里主要介绍一下隐式调用。隐式调用需要Intent能够匹配目标组件的IntentFilter中所设置的过滤信息,如果不匹配

2016-04-08 16:40:25 332

原创 Activity——Activity的Flags

前言:Activity的Flags有很多,这里主要分析一些比较常用的标记位。标记为的作用很多,有的标记位可以设定Activity的启动模式,比如FLAG_ACTIVITY_NEW_TASK和FLAG_ACTIVITY_SINGLE_TOP等;还有的标记位可以影响Activity的运行状态,比如FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_EXCLUDE_FROM_REC

2016-04-06 14:24:03 649

原创 Activity的启动模式——LanuchMode(二)

前言:上一篇大致介绍了常规情况下我们的启动模式的运行效果,这一篇讲讲Activity运行的一些基本配置和标志。在singleTask启动模式中,多次提到某个Activity所需的任务栈,什么是Activity所需要的任务栈呢?这要从一个参数说起:TaskAffinity,可以翻译为任务相关性。这个参数标识了一个Activity所需要的任务栈的名字,默认情况下,所有Activity所需的任务栈的名字为

2016-04-05 18:36:28 518

原创 Activity的启动模式——LanuchMode(一)

前言:Activity可以说是Android四大组件当中最基本的组件同样也是最重要的组件,一个完整的app中Activity之间的跳转逻辑是很复杂的,这就不得不提到一个很重要的概念——Activity的启动模式(四种),这个看起来很基础的知识点要是想研究透彻也是要下点心思的,原因是形形色色的启动模式和标志位实在是太容易被混淆了,在开发过程中使用的也非常的多,如果运用的娴熟会使我们在开发中对于跳转逻辑

2016-04-05 15:11:16 501

原创 面向对象设计原则概述

对于面向对象软件系统的设计而言,在支持可维护性的同时,提高系统的可复用性是一个至关重要的问题,如何同时提高一个软件系统的可维护性和可复用性是面向对象设计需要解决的核心问题之一。在面向对象设计中,可维护性的复用是以设计原则为基础的。每一个原则都蕴含一些面向对象设计的思想,可以从不同的角度提升一个软件结构的设计水平。面向对象设计原则为支持可维护性复用而诞生,这些原则蕴含在很多设计模式中,它们是从许多设计

2016-02-25 18:14:06 487

原创 Java泛型(一)

这里面会讲到泛型存在的意义,到泛型的种类,什么情况下可以用泛型,用到泛型的好处。一:泛型的重要应用场合之一————集合JKD1.5增加泛型支持在很大程度上都是为了让集合能记住其元素的数据类型。在没有泛型之前,一旦把对象存到Java集合中,集合就会忘记对象的类型,把所有的对象当成Object类型处理。当程序从集合中取出对象后,就需要进行强制类型转换,这种强制类型转换不仅使代码臃肿,而且容易引起Clas

2015-10-30 18:27:36 396

转载 Java程序的运行机制和JVM

Java语言比较特殊,由Java语言编写的程序需要经过编译步骤,但这个编译步骤并不会生成特定平台的机器码,而是生成一种与平台无关的字节码(也就是*.class 文件)。当然,这种字节码不是可执行性的,必须使用Java解释器来解释执行。因此可以认为:Java语言既是编译型语言,也是解释型语言。或者说,Java语言既不是纯的编译型语言,也不是纯粹的解释型语言。Java程序的执行过程必须经过先编译,后解释

2015-09-21 17:24:14 1401 1

原创 FirstBlood

之前一直想写一些技术博客,但是由于工作和自己的拖延症一直没有实施。这是本人第一次写博客,在有时间的情况下会偶尔写写的,大致的方向是Java和Android开发(本人是做Android App开发的),后期可能还会写一些有关设计模式的,一直在进行实战开发,回头再看看会发现有很多细节平时自己都没有注意到,现在看看会看到很多不一样的东西理解的更深,所以Java会偏基础一些,毕竟万丈高楼平地起,地基打好很重

2015-09-21 15:13:56 364 1

空空如也

空空如也

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

TA关注的人

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