自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Interpolator插值器

一、概述Interpolator属性是Animation类的一个XML属性,所以alpha、scale、rotate、translate、set都会继承得到这个属性。Interpolator被译为插值器,其实我不大能从字面上理解为什么会这样译,其实他是一个指定动画如何变化的东东,跟PS里的动作有点类似:随便拿来一张图片,应用一个动作,图片就会指定变化。Interpolator的系统值有下面几个:意...

2018-03-26 15:21:50 611

转载 Android View的工作流程

ViewRootImpl我们沿用《Window机制探索》中 Window 的添加流程图,我们所要分析的绘制机制,便从 ViewRootImpl 的 setView() 方法展开。//ViewRootImplpublic void setView(View view, WindowManager.LayoutParams attrs, View panelParentView) {    //...

2018-03-05 11:27:00 595

转载 Java基础之并发编程:Lock

在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。  也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock?这个问题将在下面进行阐述。本文先从synchroni

2017-12-29 11:19:47 1660

转载 解决TextView中MaxLines与ellipsize=end冲突问题

TextView控件有一个属性是ellipsize,指的是当文字内容长度超过TextView大小时显示问题,一般情况下我们都是用省略号表示,常用的情况有以下四种:1,android:ellipsize = "end"    省略号在结尾3,android:ellipsize = "start"   省略号在开头3,android:ellips

2016-04-13 10:01:55 3972

转载 Android酷炫实用的开源框架(UI框架)

1.Side-Menu.Android分类侧滑菜单,Yalantis 出品。项目地址:https://github.com/Yalantis/Side-Menu.Android2.Context-Menu.Android可以方便快速集成漂亮带有动画效果的上下文菜单,Yalantis出品。项目地址:https://github.com/Yalantis/Context

2016-01-12 16:13:24 3571

转载 Github上的andoird开源组件整理

第一部分 个性化控件(View)主要介绍那些不错个性化的View,包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style等等。一、L

2015-07-22 11:13:06 6209

转载 Android网络编程概述

Android网络编程概述首先,应该了解的几个问题:1)Android平台网络相关API接口 a) java.net.*(标准Java接口) java.net.*提供与联网有关的类,包括流、数据包套接字(socket)、Internet协议、常见Http处理等。比如:创建URL,以及URLConnection/HttpURLConnection对

2015-03-09 21:48:33 4126

转载 Java中单例模式和静态类的区别

单例模式与静态类(一个类,所有方法为静态方法)是另一个非常有趣的问题,由于单例模式和静态类都具有良好的访问性,它们之间有许多相似之处,例如,两者可以直接使用而无须创建对象,都可提交唯一实例,在一个非常高的高度上看起来它们都为是用于同样的任务。由于它们具有较多的相似性,面试官常常会问一些类似为神马使用单例模式替换静态方法?你能使用静态类替换单例模式吗?Java中单例模式与静态的区别有那些?等这样的问

2015-03-04 18:32:51 3624

转载 Java基础之集合类

JAVA集合类(大公司面试喜欢问的) IT宅男 2014.04.28 23:33 2391 字 972 次阅读看了一些所谓大公司的JAVA面试问题,发现对于JAVA集合类的使用都比较看重似的,而自己在这方面还真的是所真甚少,抽空也学习学习吧。java.util包中包含了一系列重要的集合类,而对于集合类,主要需要掌握的就是它的内部结构,以及遍历集合的迭代模式。

2015-03-04 09:11:00 2977

转载 Android照片墙完整版,完美结合LruCache和DiskLruCache

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/34093441在上一篇文章当中,我们学习了DiskLruCache的概念和基本用法,但仅仅是掌握理论知识显然是不够的,那么本篇文章我们就来继续进阶一下,看一看在实战当中应该怎样合理使用DiskLruCache。还不熟悉DiskLruCache用法的朋友可以先去参考我的上一篇文章

2014-08-19 14:05:46 4360

转载 Android DiskLruCache完全解析,硬盘缓存的最佳方案

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/28863651概述记得在很早之前,我有写过一篇文章Android高效加载大图、多图解决方案,有效避免程序OOM,这篇文章是翻译自Android Doc的,其中防止多图OOM的核心解决思路就是使用LruCache技术。但LruCache只是管理了内存中图片的存储与释放,如果图片

2014-08-19 14:03:28 3665

转载 Java基础之抽象类与接口

很多常见的面试题都会出诸如抽象类和接口有什么区别,什么情况下会使用抽象类和什么情况你会使用接口这样的问题。本文我们将仔细讨论这些话题。在讨论它们之间的不同点之前,我们先看看抽象类、接口各自的特性。抽象类抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。以JDK中的GenericServlet为例:

2014-07-16 09:20:31 4201

原创 Java基础之线程同步与锁

51CTO首页51CTO博客我的博客搜索每日博报社区:学院论坛博客下载更多登录注册熔 岩http://lavasoft.blog.51cto.com【复制】 【订阅】原创:623翻译:4转载:0博 客|图库|写博文|帮 助首页|J2SE|J2EE|Servlet/JSP|Sp

2014-06-25 10:35:23 3318

转载 程序员的自我修养(1)——操作系统篇

程序员的自我修养(1)——操作系统篇玩酷操作系统, 架构设计 暂无评论 字体:大 中 小出处:快课(www.cricode.com)   作者:快课   转载请务必保留此段声明本文是“程序员的自我修养”系列文章第一篇。介绍程序员都应该知道的操作系统知识!即是面试必备,更是程序员的自我修养!也许,只需这一篇文章,便能让你全面的认识操作系统!在阅读本文之前,推荐阅读

2014-06-24 13:14:13 5022

转载 Android基础之启动过程分析

当按下Android设备电源键时究竟发生了什么?Android的启动过程是怎么样的?什么是Linux内核?桌面系统linux内核与Android系统linux内核有什么区别?什么是引导装载程序?什么是Zygote?什么是X86以及ARM linux?什么是init.rc?什么是系统服务?当我们想到Android启动过程时,脑海中总是冒出很多疑问。本文将介绍Android的启动过程,希望能帮助你

2014-06-20 14:26:13 4092

原创 Android基础之输入法开发

分为两个部分,上部分是候选窗口(CandidateView),用来显示候选词,现在常用的输入法都有这个功能,如在搜狗、google输入法中输入abc,输入框中就会显示很多相关联的中文词。下部分就是软键盘了,这个没什么好说的。输入法中核心类是InputMethodService其次就是:CandidateView 和KeyboardView CandidateView为候选窗口,In

2014-06-13 09:48:52 4488

转载 Java / Android 基于Http的多线程下载的实现

先说下原理,原理明白了,其实很简单:a、对于网络上的一个资源,首先发送一个请求,从返回的Content-Length中回去需要下载文件的大小,然后根据文件大小创建一个文件。[java] view plaincopythis.fileSize = conn.getContentLength();// 根据响应获取文件大小  File dir = new File(di

2014-05-27 15:25:31 3953

转载 什么是互联网思维?给你最全面的解释

互联网思维精髓大总结:1、用户思维;2、简约思维;3、极致思维;4、迭代思维;5、流量思维;6、社会化思维;7、大数据思维;8、平台思维;9、跨界思维。 (友情提醒:下文很长,如果觉得看文字太累,可以先下载个图文并茂的PPT看看。这里提供下载链接:互联网思维PPT。)课前秀:三个段子第一个段子:一个毫无餐饮行业经验的人开了一家餐馆,仅两个月时间,就实现了所在商场餐厅坪效第一名;

2014-05-19 11:15:07 4171

转载 Java实现定时任务的三种方法

普通thread实现TimerTask实现ScheduledExecutorService实现普通thread这是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。这样可以快速简单的实现,代码如下:public class Task1 {public static void main(S

2014-04-10 09:38:49 3814

原创 牛逼的简历

http://www.webhek.com/misc/interactive-resume/

2014-04-09 13:33:17 3934

转载 高效开发Android App的10个建议

高效开发Android App的10个建议假如要Google Play上做一个最失败的案例,那最好的秘诀就是界面奇慢无比、耗电、耗内存。接下来就会得到用户的消极评论,最后名声也就臭了。即使你的应用设计精良、创意无限也没用。耗电或者内存占用等影响产品效率的每一个问题都会影响App的成功。这就是为什么在开发中确保最优化、运行流畅而且不会使Android系统出问题是至关重要的了。这里不需

2014-04-04 09:27:05 3552

转载 项目管理笔记

在互联网项目当中,相信每一个项目经理或者制作人,最头疼的就是技术部的管理。因为技术工作看起来是那么的棘手,一般人难以理解,而且技术人员大多数都似乎情商不高。管理人员既不能轻易了解技术工作的内涵,技术人员也觉得很难和管理人员沟通。特别是技术工作,难以在不同人之间交接,很多技术人员都声称无法继续别人做过的项目。这让管理者觉得技术人员特别喜欢耍大牌,而且他们要偷懒也非常容易。但正如军事中的定理,对付坦克

2014-04-02 09:09:53 3239

转载 Java字符串之性能优化

基础类型转化成String在程序中你可能时常会需要将别的类型转化成String,有时候可能是一些基础类型的值。在拼接字符串的时候,如果你有两个或者多个基础类型的值需要放到前面,你需要显式的将第一个值转化成String(不然的话像System.out.println(1+'a')会输出98,而不是"1a")。当然了,有一组String.valueOf方法可以完成这个(或者是基础类型对应的包装类的

2014-03-24 09:38:39 2671

转载 JAVA反射机制

Reflection是Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说"自审",并能直接操作程序的内部属性。例如,使用它能获得 Java 类中各成员的名称并显示出来。 Java 的这一能力在实际应用中也许用得不是很多,但是在其它的程序设计语言中根本就不存在这一特性。例如,Pascal、C 或者 C++ 中就没有办法在程序中获得函数定义相关的信息。Jav

2014-03-21 16:51:03 725

转载 关于AsyncTask与Handler

AsyncTask实现的原理,和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使用的优点: 简单,快捷 过程可控使用的缺点: 在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来.

2014-03-19 15:55:38 717

转载 Java线程与多线程教程

Java线程是执行某些任务的轻量级进程。Java通过Thread类提供多线程支持,应用可以创建并发执行的多个线程。 应用中有两类线程——用户线程和守护线程。当启动应用时,main线程是创建的第一个用户线程,我们可以创建多个用户线程和守护线程。当所有用户进程执行完毕时,JVM终止程序。 可以对不同的线程设置不同的属性,但并不保证高优先级的线程在低优先级线程之前执行。线程调度器是操作系统的部分实现,当

2014-03-14 10:54:02 729

转载 堆排序

前言    堆排序、快速排序、归并排序(下篇会写这两种排序算法)的平均时间复杂度都为O(n*logn)。要弄清楚堆排序,就要先了解下二叉堆这种数据结构。本文不打算完全讲述二叉堆的所有操作,而是着重讲述堆排序中要用到的操作。比如我们建堆的时候可以采用堆的插入操作(将元素插入到适当的位置,使新的序列仍符合堆的定义)将元素一个一个地插入到堆中,但其实我们完全没必要这么做,我们有执行操作更少的方法,后

2014-03-07 15:49:20 865

转载 每个极客都应该知道的Linux技巧

是什么区分开普通的Linux用户和超级极客的呢?很简单:用在学习那些使长时工作转变为一瞬间工作的技巧、诀窍、秘诀和技术上的时间。如果你想提高效率而又不用做这些搜集资料的跑腿活儿,那我们已经收集了50多条简单易学的Linux技巧,以帮助你更潇洒地工作,并且最大限度的利用你的电脑。开始享受吧! 1:检查不是由你运行的程序难度:高级应用程序:bash(译注:UNIX或者LINUX的she

2014-03-07 14:01:55 1274

转载 Android基础之onTouch事件传递机制

Android onTouch事件介绍:Android的触摸事件:onClick, onScroll, onFling等等,都是由许多个Touch组成的。其中Touch的第一个状态肯定是ACTION_DOWN, 表示按下了屏幕。之后,touch将会有后续事件,可能是:ACTION_MOVE  //表示为移动手势ACTION_UP  //表示为离开屏幕ACTION_CAN

2014-01-13 14:11:28 817

转载 Android基础之Intent传递二进制数值的两种方法

大家好,好久不见,今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,为了让大家更容易理解

2014-01-13 11:34:01 738

转载 Java基础之JNI实现

Jvm封装了各种操作系统实际的差异性的同时,提供了jni技术,使得开发者可以通过java程序(代码)调用到操作系统相关的技术实现的库函数,从而与其他技术和系统交互,使用其他技术实现的系统的功能;同时其他技术和系统也可以通过jni提供的相应原生接口开调用java应用系统内部实现的功能。        JNI是JAVA标准平台中的一个重要功能,它弥补了JAVA的与平台无关这一重大优点的不足,在JA

2013-12-31 11:14:08 785

转载 安卓开发者必备的42个链接

官方网站1、谷歌安卓开发者页面 这里是主站点,在这您可以找到一切资源帮助您开始安卓开发。此站包含了很多关于学习基础知识的资源,完整的API引用,以及你开始开发所需的各种工具。此站共分为五个部分:作为初学者,你应该从工具开始,这部分讲解了如何安装安卓SDK。教程为你提供了关于安卓的基本介绍,教给你如何写出你的第一个程序。它包括很多的资源,即便成为高级程序员你仍需阅读这里面的文章。AP

2013-12-30 11:28:00 730

原创 Android基础之App Widget创建

简单的说一下怎么建立App Widget以及点击进入相应的Activity。创建一个App Widget需要四个步骤:一、在AndroidManifest中配置在AndroidManifest中配置App Widget其实和写广播接收器一样: <meta-data

2013-12-26 15:22:44 795

原创 Java基础之内部类

提起Java内部类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested Class),关于这两者的区别与联系,在下文中会有对比。内部类从表面上看,就是在类中又定义了一个类(下文会看到,内部类可以在很多地方定义),而实际上并没有那么简单,乍看上去内部类似乎有些多余,它的用处对于初学者来说可能并不是那么显著,但是随着对它的深入了解,你会发现Java的

2013-12-19 15:18:10 848

转载 Java基础之protected访问权限

来谈谈protected访问权限问题。看下面示例1:Test.javaclass MyObject {} publicclass Test {    publicstaticvoid main(String[] args) {       MyObject obj = new MyObject();       obj.clone(); //

2013-12-19 11:09:24 842

转载 Android基础框架之启动流程

Android手机系统本质上是一个基于Linux的应用程序,它以Linux系统为内核。系统的启动过程包括Linux内核启动和Android框架启动两个阶段,本文主要介绍Android 框架(Framework)启动阶段。一、Linux内核启动   1、装载引导程序bootloader      Linux内核启动时首先装载执行bootloader引导程序,装载完成后进入内核程序。 

2013-12-17 11:46:10 828

转载 Java基础之构造器Constructor

构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。构造器用来确保每个对象都会得到初始化。当对象被创建时,如果该类具有构造器,java就会在用户有能力操作对象之前自动调用相应的构造器,所以保证了初始化地进行。在java中创建和初始化被捆绑在了一起,两者不能分离。注意构造器没有返回值,与返回值为空(void)明显不同。如果不想被实例化,可

2013-12-13 11:04:39 884

转载 Android学习笔记之反编译工具介绍及下载(Class文件反编译,xml文件反编译整理)

最近在网上查了一些Android文件反编译工具,供大家参考。1.CLASS文件反编译工具:XJAD  2.xml文件工具AXMLPrinter2.jar将它放到android-sdk-windows-1.5_r3\tools文件夹中运行cmd,进入tools目录,运行java -jar AXMLPrinter2.jar main.xml > main.txt

2013-12-12 14:26:25 689

转载 Android基础框架之Context详解

前言:本文是我读《Android内核剖析》第7章 后形成的读书笔记 ,在此向欲了解Android框架的书籍推荐此书。            大家好,  今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,是应为我们在开发中   时刻的在与它打交道,例如:Service、BroadcastReceiver、Activity等都会利用到Co

2013-12-11 14:59:26 897

转载 Java基础之内存回收机制

一、Java对象在内存引用状态  内存泄露:程序运行过程中,会不断分配内存空间,那些不再使用的内存空间应该即时回收它们,从而保证系统可以再次使用这些内存,如果存在无用的内存没有被回收回来,这就是内存泄漏。  (1)强引用  这是java程序中最常见的引用方式,程序创建一个对象,并把这个对象赋给一个引用变量,这个引用变量就是强引用。java程序可通过强引用来访问实际的对象。当一个对象被一

2013-12-04 16:10:25 671

空空如也

空空如也

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

TA关注的人

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