自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(419)
  • 资源 (2)
  • 问答 (2)
  • 收藏
  • 关注

原创 谁的青春不似梦,谁的梦里不青春。

首先说一下,这是一个冗长的梦,是一个未完待续满是少女心的梦,一直相信,梦里梦外,冥冥中是有许多关联的,只是身在其中局限了许多了解真相的眼光。这一场梦之后,就像度过了一次劫,许多放下的放不下的,留恋的留不住的,遗憾的不甘的,都随着三月春风远去……谁的青春不似梦,谁的梦里不青春。故事,在这里开始了……那是一个阳光明媚的清晨,姓名取自“疏影倾斜水清浅”的清浅,来到早已约好人的咖啡厅。离着高中

2017-07-04 10:22:55 492

原创 2017上半年总结

2017走完了整整一半,说长也长,说短也短,可以做许多许多事情,又有许多事情还不够。朋友圈会有很多人发些心灵鸡汤,鼓励鼓励自己和别人有个好的结束和开始,习惯了记手帐以后,似乎每个起点和终点都值得与自己一叙,那些不够完美的喜悦,不够丰硕的收获,点滴累积,终成自己。6个月仔细算来,也做了许多事。用脚步丈量的北京城,走过了圆明园,走过了孔庙国子监,走过了中山公园和太庙,走过了红螺寺,走过了天坛地坛和

2017-07-04 10:12:05 248

原创 朝觐先圣

朝觐先圣                                                                                    ——北京孔庙游记丁酉年五月周休日,闲来无事,与友穿过半个北京城,前往位于国子监街的孔庙,朝觐孔子。家学渊源,与孔夫子神交已久,早该来朝觐。自古称之“至圣先师,万世师表”,雅俗无碍,皆授业于先师孔夫子,有此机会朝觐

2017-07-04 10:01:45 334

转载 Glide

Glide 是 Google 员工的开源项目, Google I/O 上被推荐使用,一个高效、开源、Android设备上的媒体管理框架,它遵循BSD、MIT以及Apache 2.0协议发布。Glide具有获取、解码和展示视频剧照、图片、动画等功能,它还有灵活的API,这些API使开发者能够将Glide应用在几乎任何网络协议栈里。创建Glide的主要目的有两个,一个是实现平滑的图片列表滚动效果,另一

2017-07-03 17:46:13 277

原创 UncaughtExceptionHandler捕获异常

public class CrashHandler implements UncaughtExceptionHandler { private static final String TAG = "NorrisInfo"; private UncaughtExceptionHandler mDefaultHandler; private static CrashHandle

2017-07-03 17:36:10 516

原创 android验证通用类

public class UsualTools { private static long lastClick; public static boolean isShowPrintMsg = false; public UsualTools() { } public static boolean isPhoneNumber(String input) {

2017-07-03 14:59:35 577

原创 Validator验证器工具类

public class Validator { /** * 正则表达式:验证用户名(不包含中文和特殊字符)如果用户名使用手机号码或邮箱 则结合手机号验证和邮箱验证 */ public static final String REGEX_USERNAME = "^[a-zA-Z]\\w{5,17}$"; /** * 正则表达式:验证密码(不包

2017-07-03 14:44:27 1718

原创 Toast的工具类和自定义工具类

Toast在实际Android开发中使用率是非常高的。默认的写法就不在此处赘述了。下面是Toast的简单使用工具类public class ToastUtils { private ToastUtils() { throw new UnsupportedOperationException("cannot be instantiated"); }

2017-07-03 11:49:21 326

原创 一些特炫的特效动画库(一)

1.标签数字   compile ‘com.xenione.libs:tab-digit:1.0.2’ 2.WeatherView天气动画控件compile ‘com.github.MatteoBattilana:WeatherView:1.1.0’ 3.RecyclerView与海绵宝宝字符compile'c​​om.github.anastr

2017-07-03 11:15:42 1071

转载 自定义折扣券锯齿型布局

一个很有意思的折扣优惠代码实现的废话不多说,直接上图:思路: 上面的图片其实和普通的Linearlayout,RelativeLayout一样,只是上下两边多了类似于半圆锯齿的形状。那么只需要处理不同地方。可以在上下两条线上画一个个白色的小圆来实现这种效果。假如我们上下线的半圆以及半圆与半圆之间的间距是固定的,那么不同尺寸的屏幕肯定会画出不同数量的半圆,那么我们只需要根

2017-07-03 10:57:56 481

转载 EventBus事件优雅地替换Handler

什么是EventBusEventBus是Android下高效的发布/订阅事件总线机制。作用是可以代替传统的Intent,Handler,Broadcast或接口函数在Fragment,Activity,Service,线程之间传递数据,执行方法。特点是代码简洁,是一种发布订阅设计模式(Publish/Subsribe),或称作观察者设计模式。下载EventBus1.

2017-06-29 17:00:30 1096

转载 单例模式的七种写法

定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式结构图: 单例模式有多种写法各有利弊,现在我们来看看各种模式写法。1. 饿汉模式public class Singleton { private static Singleton instance = new Singleton(); private Singleton

2017-06-29 16:29:18 2517

转载 otto与EventBus对比

otto 是 Square公司发布的一个发布-订阅模式框架,它基于Google Guava 项目中的event bus模块开发,针对Android平台做了优化和加强。虽然Square已经停止了对otto的更新并推荐使用RxJava和RxAndroid来替代它,但是otto的设计理念和源码仍旧值得学习,这一篇先来学习下otto的使用方法。添加依赖库首先配置gradle,如下所

2017-06-29 15:47:21 1184

转载 EventBus3.0用法全解析

EventBus是一款针对Android优化的发布/订阅事件总线。简化了应用程序内各组件间、组件与后台线程间的通信。优点是开销小,代码更优雅,以及将发送者和接收者解耦。如果Activity和Activity进行交互还好说,如果Fragment和Fragment进行交互着实令人头疼,我们会使用广播来处理,但是使用广播稍显麻烦并且效率也不高,如果传递的数据是实体类需要序列化,那么很显然成本会有点高。今

2017-06-29 15:21:40 720

转载 EventBus的四个函数

EventBus还有另外有个不同的函数,他们分别是:1、onEvent2、onEventMainThread3、onEventBackgroundThread4、onEventAsync这四种订阅函数都是使用onEvent开头的,它们的功能稍有不同,在介绍不同之前先介绍两个概念:告知观察者事件发生时通过EventBus.post函数实现,这个过程叫做事件的发布,

2017-06-29 14:57:29 409

转载 EventBus使用

基本使用(1)自定义一个类,可以是空类,比如:[java] view plain copypublic class AnyEventType {       public AnyEventType(){}   }  (2)在要接收消息的页面注册:[java] view pla

2017-06-29 14:54:45 241

转载 Zxing实现工作原理之QRCode

QRCode是被广泛应用的一种二维码,解码速度快。二维码相对于条形码来说,二维码的存储数据量更大,空间利用率高,有一定的容错性。二维码原理介绍:二维码是用某种特定的几何图形按一定的规律在平面上分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙的利用构成计算机内部逻辑基础的0/1比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图像输入设备或光电扫

2017-06-29 14:23:52 8258

原创 Zxing自定义(实际应用中实例)

首先看看部分代码和类ViewfinderView 类 /** * 自定义组件实现,扫描功能 */public final class ViewfinderView extends View { private static final long ANIMATION_DELAY = 100L; private static final int OPAQUE = 0xF

2017-06-29 14:02:40 1037

转载 zxing实现二维码扫描完美解决方案

最近因项目需求,需要在App中集成二维码扫描的功能。网上找了很多资料,最后决定使用Google的zxing来实现。实现的过程遇到了很多的坑,也是因为这些坑在网上没有具体的解决方案,今天就把我的实现过程分享给大家。我会分为两步来和大家分享:(1)项目中如何集成zxing(2)如何修改取景框的样式(3)总结填坑1.项目中集成zxing在项目中集成zxin

2017-06-29 11:32:29 10875 3

原创 handler.postDelayed循环倒计时

int time = 120; handler.postDelayed(new Runnable() { @Override public void run() { tv_record_time.setText(time + "s");

2017-06-29 11:16:17 1983

原创 高德地图签名

一、创建生成keystore;二、SHA1值的申请;三、高德地图key值申请;四、android studio 打包生成apk;       好了,废话不多说,直接开始图文说明:一、keystore(一)android studio界面找到菜单栏 Build 选择Generate Signed APK  子菜单。 (二

2017-06-26 10:35:08 2723

原创 新闻的离线下载功能仿网易之(二) 带缓存的功能实现

上次是单一频道的离线下载,这次要做更难一点儿的默认频道下载,包括后期的未加载页面的缓存和获取接口如下按照上面的接口解析时处理的比较复杂,相当于自己解析了两层之后再调用的gson解析,看代码private DownNonet downNonetbean; private HttpInstance httpInstance; private List downDetai

2017-06-22 16:56:33 624

原创 Edittext设置身份证输入格式

ad_edit2.setKeyListener(new NumberKeyListener() { @Override public int getInputType() { return android.text.InputType.TYPE_CLASS_PHONE; } @Override protected char[] getA

2017-06-19 14:40:56 1369

转载 Android Widget桌面小部件二

一、Widget设计步骤  需要修改三个XML,一个class:  1.第一个xml是布局XML文件(如:main.xml),是这个widget的。一般来说如果用这个部件显示时间,那就只在这个布局XML中声明一个textview就OK了。  2.第二个xml是widget_provider.xml,主要是用于声明一个appwidget的。其中,Layout就是指定上面那个main.xm

2017-06-15 17:03:23 342

原创 @SuppressLint("NewApi")从何而来

在Android代码中,我们有时会使用比我们在AndroidManifest中设置的android:minSdkVersion版本更高的方法,此时编译器会提示警告,解决方法是在方法上加上@SuppressLint("NewApi")或者@TargetApi()。那他们之间有什么区别呢,很简单,@SuppressLint("NewApi")屏蔽一切新api中才能使用的方法报的andr

2017-06-15 17:01:29 834

转载 osgi框架基础原理与实例一

OSGI(Open Services Gateway Initiative),或者通俗点说JAVA动态模块系统,定义了一套模块应用开发的框架。OSGI容器实现方案如Knopflerfish, Equinox, and Apache Felix允许你把你的应用分成多个功能模块,这样通过依赖管理这些功能会更加方便。和Servlet和EJB规范类似,OSGI规范包含两大块:一个OSGI容器需要实

2017-06-15 16:36:19 18168

转载 App Widget简介案例

1 App Widget简介App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。本文参考Android官方文本,先介绍App Widget的主要组件,然后再以示例来详细说明。  2 App

2017-06-13 17:05:13 396

转载 Android 图片缓存之内存缓存技术LruCache

每当碰到一些大图片的时候,我们如果不对图片进行处理就会报OOM异常,这个问题曾经让我觉得很烦恼,后来终于得到了解决,那么现在就让我和大家一起分享一下吧。这篇博文要讲的图片缓存机制,我接触到的有两钟,一种是软引用,另一种是内存缓存技术。先来看下两者的使用方式,再来作比较。除了加载图片时要用到缓存处理,还有一个比较重要的步骤要做,就是要先压缩图片。1、压缩图片至于要压缩

2017-06-13 14:25:23 316

转载 Android中图片的三级缓存详解

图片的三级缓存机制一般是指应用加载图片的时候,分别去访问内容,文件,网络获取图片的一种行为。一、三级缓存流程图三级缓存流程图二、代码框架搭建这里我仿造 Picasso 的加载图片代码,也做出了with,load,into等方法。2.1 with(context)这个方法传入上下文,返回ImageManager对象。/** * 初

2017-06-13 14:08:50 854

原创 线程池简述

Sun在Java5中,对Java线程的类库做了大量的扩展,其中线程池就是Java5的新特征之一,除了线程池之外,还有很多多线程相关的内容,为多线程的编程带来了极大便利。为了编写高效稳定可靠的多线程程序,线程部分的新增内容显得尤为重要。   有关Java5线程新特征的内容全部在java.util.concurrent下面,里面包含数目众多的接口和类,熟悉这部分API特征是一项艰难的学习过程。

2017-06-12 14:45:16 388 1

转载 Android应用性能优化之使用SparseArray替代HashMap

HashMap是java里比较常用的一个集合类,我比较习惯用来缓存一些处理后的结果。最近在做一个Android项目,在代码中定义这样一个变量,实例化时,Eclipse却给出了一个 performance 警告。sparsearray意思就是说用SparseArray  来替代,以获取更好性能。老实说,对SparseArray并不熟悉,第一感觉应该是Android提供

2017-06-01 13:50:19 250

转载 基于XMPP的即时通讯

一、常见即时通讯实现socketopenfire+asmack环信信鸽融云 二、XMPP优势1. 开放性XMPP协议是自由、开放、公开的,并且易于了解。而且在客户端、服务器、组件、源码库等方面,都已经各自有多种实现。 2.跨平台客户端只要基于XMPP协议,不管是什么平台(包括不同的移动终端)都可以互联互

2017-06-01 10:18:05 5945

翻译 Jitsi

http://www.aosabook.org/en/jitsi.htmlJitsi is an application that allows people to make video and voicecalls, share their desktops, and exchange files and messages. Moreimportantly it allows peo

2017-05-27 14:02:57 7771

原创 Android小红点儿数量提示

如上图所示,在做某些应用的时候会遇到这样的需求,需要给出消息的提示,消息可以用推送方式收取,也可以通过接口获取,在这里记录一下开发中这种小红点提示怎样写首先看下布局文件<LinearLayout android:layout_width="match_parent" android:layout_height="@dimen/pad_height_50"

2017-05-27 11:16:52 1795

转载 Notification详解(三)

我们在用手机的时候,如果来了短信,而我们没有点击查看的话,是不是在手机的最上边的状态栏里有一个短信的小图标提示啊?你是不是也想实现这种功能呢?今天的Notification就是解决这个问题的。       我们也知道Android系统也是在不断升级的,有关Notification的用法也就有很多种,有的方法已经被android抛弃了,现在我实现了三种不同的方法,并适应不同的android版

2017-05-25 17:02:22 268

转载 Notification详解(二)

Notification —— 通知,是一种让你的应用程序在不使用Activity的情况下警示用户。它是看不见的程序组件(Broadcast Receiver,Service和不活跃的Activity)警示用户有需要注意的事件发生的最好途径。 Notification 是由NotificationManager(系统服务)统一管理的。          一般来说, 一个Notifi

2017-05-25 16:23:02 340

原创 org.jivesoftware.smack_2.2.1的api

jars/  jars/xpp.jar27.37 KBorg/  org/jivesoftware/    org/jivesoftware/smack/      org/jivesoftware/smack/AccountManager.class5.99 KB     org/jivesoftwa

2017-05-25 16:20:29 2395 1

转载 Notification详解(含工具类)一

昨天一天只写了两篇文章,效率超低。追其原因呢,其实我一直在研究notification的实现方式,今天研究完了给大家分享一下。本来想写个工具类来封装一下代码的,但是我发现notification的个性化元素太多了,做成一个方法的话参数又多的要死,于是我就将比较常见的方法做了封装,写了个不是很规整的工具类,至于内部的逻辑啊,点击跳转的事件啊,大家下载demo后看看代码应该就能明白了,最重要的是根据自

2017-05-25 16:01:55 935

转载 NGN-android开发中的知识点之imsdroid(三)

IM比较SipDroid/IMSDroid/CSipsimple/Linphone/Webrtc一) sipdroid1)架构sip协议栈使用JAVA实现,音频Codec使用skype的silk(Silk编解码是Skype向第三方开发人员和硬件制造商提供免版税认证(RF)的Silk宽带音频编码器)实现。NAT传输支持stun server.2)优缺点:NAT方面

2017-05-25 10:30:16 530

原创 ScrollWebView的滑动距离显示内容

做项目的时候有个这样的效果,页面的内容滑动一段距离以后,标题栏显示标题内容和头像。这个效果正常的WebView是达不到的,这时候就需要自定义可滑动的WebView了。下面看下滑动Webview的代码。public class ScrollWebView extends WebView{ private OnScrollChangedCallback mOnScrollChangedCal

2017-05-24 11:47:46 900

Android 开发范例代码大全(第2版).pdf

Android 开发范例代码大全(第2版)包含基础android应用开发中的许多例子,实际操作可靠性非常高,对基础的稳固有很大帮助

2018-06-29

[Android.UI基础教程].Jason.Ostrander.扫描版.pdf

[Android.UI基础教程].Jason.Ostrander.扫描版,关于android的UI设计方面的知识,学习过程的经典书

2018-06-29

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

TA关注的人

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