自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (6)
  • 收藏
  • 关注

原创 java反射的应用场景和解析方法

什么是反射?正常场景下,java从源码到运行有3个阶段:source class runtime反射提供的是runtime阶段获取类的class实例、方法、属性、注解,并且能够调用类的方法的途径,这种动态获取类信息和调用类方法的机制被称之为反射为什么要使用反射?正常的实例化一个对象ClassA objA = new ClassA();objA.sayHello();通过反射去实例化

2017-12-19 22:17:33 1303

原创 Android.9图片分析

什么是.9图片至于什么是.9图片这里就简单提一下,即图片后缀名前有.9的图片,如pic.9.png、pic1.9.jgp,诸如此类的图片就称为.9图片。.9图片的作用①.9图片的作用是在图片拉伸的时候特定的区域不会发生图片失真,至于哪些部分不会失真那么得看你的图片是如何绘制的。②当一张图片作为背景时可以指定前景内容的显示区域。如图:其中灰

2017-12-19 21:14:17 203

原创 使Activity关闭后不执行onDestroy()

重写finish()方法:@Overridepublicvoidfinish() {//super.finish();moveTaskToBack(true);//设置该activity永不过期,即不执行onDestroy()}调用moveTaskToBack(true),这样只有在第一次启动的时候会执行onCre

2017-12-19 18:23:44 4908

原创 Viewpager刷新数据问题

1、PagerAdapter 的工作流程其实就是 PagerAdapter 中方法的执行顺序,来看看 Leo8573 的分析(个人感觉基本说到位了,所以直接拷过来了):PagerAdapter 作为 ViewPager 的适配器,无论 ViewPager 有多少页,PagerAdapter 在初始化时也只初始化开始的2个 View,即调用2次instantiateItem 方法。而接下来每当

2017-12-10 18:56:17 7028

原创 Service如何弹出dialog

我们都知道service是没有界面的,默默的在后台执行逻辑代码,有时候需要和前台有所交互,如:toast或弹出提示框等等在service中弹出toast很简单,只要使用handler就可搞定,代码如下hanlder.post(new Runnable() { @Override public void run() { Toast.makeText(D

2017-12-10 11:05:24 2426 2

原创 Spinner背景、字体颜色

自定义 spinner (背景、字体颜色)1、准备两张图片,并做好9.png2、在drawable中定义spinner_selector.xml <item android:state_pressed="true" android:drawable="@drawable/spinner_press" /> <i

2017-12-10 11:01:30 2240 1

原创 波纹扩散特效(仿支付宝咻一咻功能)

今年春节晚会没看尽兴,被支付宝集福给添了一段插曲,朋友们都在那数定时间段不停的咻一咻,哇,我咻到一个敬业福,不可能的,哈哈。那么咻一咻功能基于程序代码是怎么实现的呢?下面脚本之家小编给大家分享本教程帮助大家学习Android波纹扩散效果之仿支付宝咻一咻功能实现波纹扩散特效,具体内容如下所示:先来看看这个效果这是我的在Only上添加的效果,说实话,Only现在都还只是

2017-12-10 10:55:14 2412

原创 获得poi图片的一种方法(百度地图api)

百度地图api中关于poi检索的内容实际上是比较少的。如果想做poi的介绍界面,需要 poi的图片。。。但是百度地图api中只提供了poi的url。没办法,用正则表达式自己搞!一开始遇到的问题是无法解析getDetailUrl()的源码,后来发现这个url是个废弃的有么有搞错自己构建如下"http://map.baidu.com/detail?qt=ninf&uid="

2017-12-10 10:37:17 1768

原创 android:windowContentOverlay作用

相信每个app都需要一个闪屏页 就是一个开始页面 对于新手来说 可能就直接一个activity 弄个背景图片 ,细心地同学也许会发现 每次启动 应用程序的时候 一开始显示的不是那个设置的背景图片 而是白色或黑色背景 可能时间很短 这是为什么呢 。再看看其他市面上的应用都是一开始就是显示背景图片 而没有白色背景 研究了很久 其实 设置一下主题就行了 给activity设置主题 其中有一个属性

2017-12-10 10:32:47 4928

原创 okhttputils显示下载进度

//download the new appprivate void downLoadNewApp(NewVersion.XianzaishiRfBean version) { if (StringUtils.isEmpty(version.getUrl())) { ToastUtils.showToast("新版本的APP url为空");

2017-12-10 10:30:27 1160

原创 layout_weight让layout自动调整到剩余高度

设计过程中,activity有上下固定高度的菜单,需要控件能自动填充中间的空白部分。发现在一个容器里,其他控件没有android:layout_weight设定时,给linearlayout指定android:layout_weight就能自动填充空余的高度。省去了很多取屏幕高度的复杂的运算,感觉相当的棒!<LinearLayout xmlns:android="http://sche

2017-12-10 10:28:33 2221

原创 HorizontalListView的滑动冲突解决

HorizontalListView是可以实现横向滑动ListView,它在github上的项目地址是:https://github.com/MeetMe/Android-HorizontalListView但笔者在使用它的时候,发现它与slidingmenu或者swipebacklayout产生滑动冲突,很不幸,它的源码里没有去做滑动冲突解决的方法。在这里,解决它的滑动冲突非常简单,笔

2017-12-10 10:24:55 515

原创 App热更新原理

ClassLoader我们知道Java在运行时加载对应的类是通过ClassLoader来实现的,ClassLoader本身是一个抽象来,Android中使用PathClassLoader类作为Android的默认的类加载器,PathClassLoader其实实现的就是简单的从文件系统中加载类文件。PathClassLoade本身继承自BaseDexClassLoader,BaseD

2017-12-09 16:24:37 4259

原创 Android中的Java,class,dex,apk

Java文件-----应用程序源文件android本身相当一部分都是用java编写而成(基本上架构图里头蓝色的部份都是用Java开发的),android的应用必须使用java来开发Class文件------Java编译后的目标文件不像J2se,java编译成class就可以直接运行,android平台上class文件不能直接在android上运行。 由于Google

2017-12-09 13:06:49 310

原创 Android代码混淆

在androidStudio中做混淆,基本就是对Proguard-rules.pro文件的操作。混淆的过程也是有规律可循的。下面我将分几个部分来分别介绍混淆过程。(1)如何开启混淆。(2)混淆的公共部分。(3)需要我们不混淆的代码。(4)libs下的第三方Jar包的混淆方式。(5)complie的第三方Jar包的混淆方式。(6)代码注释的混淆方式。

2017-12-05 22:56:21 340

原创 JSON数据格式

我们先来看下w3cschool对json的定义:JSON:JavaScript 对象表示法(JavaScriptObjectNotation)。JSON 是存储和交换文本信息的语法。类似 XML。JSON 比 XML 更小、更快,更易解析。使用中,json有以下三种结构:对象:{"name":"Michael","age":24}数

2017-12-05 20:14:32 285

原创 Android中的App网络传输协议

App与服务器交互就会涉及到信息的交换,而信息的交互就必然需要一套完整的数据协议。这里首先需要明确一点的是什么是网络传输协议呢?这里首先套用一段百度百科的定义: 网络传输协议或简称为传送协议(Communications Protocol[1] ),是指计算机通信的共同语言。现在最普及的计算机通信为网络通信,所以“传送协议”一般都指计算机通信的传送协议,如TCP/IP、NetB

2017-12-05 19:44:41 4161

原创 HTTP状态码

当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。HTTP状态码的英文为HTTP Status Code。下面是常见的HTTP状态码:200 - 请求成功301 - 资源(网页等)被永久转移到其它URL404 -

2017-12-05 19:10:17 170

原创 RxJava详解

 RxJava 到底是什么一个词:异步。RxJava 在 GitHub 主页上的自我介绍是 "a library for composing asynchronous and event-based programs using observable sequences for the Java VM"(一个在 Java VM 上使用可观测的序列来组成异步的、基于事件的程序的库)。这就...

2017-12-05 11:52:31 232

原创 JVM和DVM的区别

1.首要差别 Dalvik: 基于寄存器,编译和运行都会更快些 JVM: 基于栈, 编译和运行都会慢些2.字节码的区别 Dalvik: 执行.dex格式的字节码,是对.class文件进行压缩后产生的,文件变小 JVM: 执行.class格式的字节码3.运行环境的区别     Dalvik : 一个应用启动都运行一个单独的虚拟机运行在一个单...

2017-12-05 11:29:09 905

原创 Fresco图片加载框架的使用

0.引入Fresco以及相关注意事项。1.PlaceHolderImage占位图2.FailureImage加载失败时显示的图片3.RetryImage重新加载的图片4.ProgressBarImage加载时显示的进度图片5.BackgroundImage背景图6.OverlayImage叠加图7.多种效果结合加载图片8.圆形头像,圆角头像以及背景叠加9.图像边

2017-12-05 11:25:31 339

原创 OkHttp网络请求框架的使用

okhttp的简单使用,主要包含:一般的get请求一般的post请求基于Http的文件上传文件下载加载图片支持请求回调,直接返回对象、对象集合支持session的保持使用okhttp使用okhttp前首先要添加依赖compile 'com.squareup.okhttp3:okhttp:3.9.0'一般的get请求对了网络加载库,那么最常见的肯定就是http get请求了

2017-12-05 10:57:16 435

原创 Fragment详解

1、Fragment介绍 作为 Activity 界面的一部分,Fragment 的存在必须依附于 Activity,并且与 Activity 一样,拥有自己的生命周期,同时处理用户的交互动作。同一个 Activity 可以有一个或多个 Fragment 作为界面内容,并且可以动态添加、删除 Fragment,灵活控制 UI 内容,也可以用来解决部分屏幕适配问题。2、F

2017-12-03 11:15:47 959

原创 RecyclerView使用

概述RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用。据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生,例如:ListView、GridView。那么有了ListView、GridView为什么还需要RecyclerView这样的控件呢?整体上看RecyclerView架构,提

2017-12-02 14:54:04 161

原创 Logcat五种级别日志

Android 的调试信息分为五类: VERBOSE 类型调试信息,verbose啰嗦的意思 DEBUG 类型调试信息, debug调试信息 INFO 类型调试信息, 一般提示性的消息information WARN 类型调试信息,warning警告类型信息 ERROR 类型调试信息,错误信息Android Log提供添加以上调试信息

2017-12-01 22:32:43 19274

原创 横竖屏切换探讨

一、禁止横竖屏转换Android横竖屏切换在手机开发中比较常见,很多软件在开发过程中为了避免横竖屏切换时引发不必要的麻烦,通常禁止掉横竖屏的切换,通过在AndroidManifest.xml中设置activity中的android:screenOrientation属性值来实现。比如下列设置android:screenOrientation="portrait"则无论手机如何变

2017-12-01 21:59:01 428

原创 Android的五个进程

1、前台进程(Foreground process):用户当前正在使用的,当前工作所需要的进程。一个进程如果满足下列任何条件被认为是前台进程:正运行着一个正在与用户交互的活动(Activity对象的onResume()方法已经被调用)。寄宿了一个服务,该服务与一个与用户交互的活动绑定。有一个Service对象执行它的生命周期回调(onCreate()、onStart()、onDes

2017-12-01 21:46:11 334

原创 EventBus事件总线框架的使用

1、概述EventBus定义:是一个发布 / 订阅的事件总线。这么说应该包含4个成分:发布者,订阅者,事件,总线。那么这四者的关系是什么呢?很明显:订阅者订阅事件到总线,发送者发布事件。大体应该是这样的关系: 订阅者可以订阅多个事件,发送者可以发布任何事件,发布者同时也可以是订阅者。 2、原理       在onCreate里面执行Eve

2017-12-01 09:39:31 1809

MVP模式代码

该代码包采用MVP模式,逻辑清晰、便于理解,对于学习MVP模式有很大帮助!

2018-09-02

即时音视频聊天

完整的音视频聊天代码,有详细说明,完美的帮助你!

2016-01-13

通用指南针

这是一款通用精美的指南针程序,无论菜鸟还是大神都可以拿去学习,下载后直接解压,里面就是源码包,导入Eclipse即可!

2014-08-26

百度定位源码包

这是一款基于百度SDK的定位程序,非常精准!通过百度地图显示出来!下载后解压,里面是源码,一目了然,直接应用!

2014-08-26

日历程序源码包

这是一款简洁实用的日历程序,里面的代码很详细!对相关开发者很有帮助!解压后,里面就是源代码,一目了然!

2014-08-26

图片放大镜

可以放大背景图片上区域。通过PathView和ShaderView来构成放大的View

2014-04-30

空空如也

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

TA关注的人

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