自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(141)
  • 资源 (7)
  • 收藏
  • 关注

原创 Fragment系列之BackStackRecord源码

1. 简介:本文章基于Fragment管理源码简介,对BackStackRecord的相关细节技术实现做详细的解读。2. 主要的操作方法从源码可以看到BackStackRecord中对Fragment的操作方法都是对FragmentTransaction的实现,主要的方法包括:add、replace、remove、hide、show、detach、attach、addToBackSt...

2019-06-29 16:22:44 744

原创 Fragment系列之Fragment管理源码简介

简介:作为一个android开发者,UI架构设计、开发肯定是必备技能,至少android应用开发还没Web端开发分的那么细,前端/后端/数据库,android从UI到数据存储都在客户端完成,而Fragment作为系统提供的页面级别的组件类,在构建复杂的页面布局和页面功能复用上有着很重要的地位,它和Activity一样有生命周期,当然就会有一个对Fragment管理类FragmentManager...

2019-06-29 16:19:12 295

原创 View系列之事件分发机制源码

思考几个问题:1. recycleview嵌套recycleview 双向滑动如何解决滑动冲突问题?2. 自定义viewgroup如何指定内部view的事件响应顺序?3. view和viewgroup的在事件处理上有和区别?4. 事件分发对象有哪几类?5.onTouch()和onTouchEvent()哪个优先级高?6.事件在哪些对象之间进行传递?阅读建议:网上...

2019-06-25 22:28:11 240

转载 Android开发必备的知识社区

1、源码网站https://github.com/googlesamplesAndroid系统每次推出一些新特性,Google都会写一些Demo放在Github上,对于想要了解新特性怎么玩的同学,肯定不能错过它。https://www.codota.com/如果你不知道一个Android的类怎么用,可以在Codota上面快速的找到很多不错的示例代码。h...

2019-06-10 10:14:44 336

转载 算法文章参考

java接口的意义-百度规范、扩展、回调抽象类的意义-乐视为其子类提供一个公共的类型 封装子类中得重复内容 定义抽象方法,子类虽然有不同的实现 但是定义是一致的内部类的作用-乐视内部类可以用多个实例,每个实例都有自己的状态信息,并且与其他外围对象的信息相互独立。 在单个外围类中,可以让多个内部类以不同的方式实现同一个接口,或者继承同一个类。 创建内部类对象的时刻并不依赖...

2019-01-22 15:56:02 245

原创 算法练习文章参考

https://leetcode-cn.com/problemset/all/https://www.zhihu.com/question/24964987https://blog.csdn.net/jiangyanting2011/article/details/70325215

2019-01-22 15:52:25 187

转载 内轮差编辑内轮差

内轮差编辑内轮差(Difference of Radius Between Inner Wheels)是车辆转弯时内前轮转弯半径与内后轮转弯半径之差。对汽车列车,则是牵引车的内前轮与挂车的内后轮转弯半径之差。由于内轮差的存在,车辆转弯时,前、后车轮的运动轨迹不重合。在行车中如果只注意前轮能够通过而忘记内轮差,就可能造成后内轮驶出路面或与其他物体碰撞的事故。目录1定义2相关内容3引发事端

2017-10-12 12:33:19 1194

转载 android 监听网络状态的变化及实际应用

平时我们在请求错误的情况下,通常会进行处理一下,一般来说,主要分为两方面的错误 - 没有网络的错误 - 在有网络的情况下,我们客户端的错误或者服务器端的错误今天这篇博客主要阐述以下问题怎样监听网络状态的变化,包括是否打开WiFi,否打开数据网络,当前连接的网络是否可用网络没有打开情况下的处理,如弹出对话框,跳转到 打开 WiFi设置的界面等非WiFi情况下是否加载图片,

2017-10-09 10:39:00 1262

转载 Android开源项目及库整理总结 字数10731 阅读2704 评论2 喜欢85 自己总结的Android开源项目及库。 github排名https://github.com/trending,

Android开源项目及库整理总结字数10731 阅读2704 评论2 喜欢85自己总结的Android开源项目及库。 github排名https://github.com/trending, github搜索:https://github.com/searchUIAwesome-MaterialDesign- MaterialD

2017-09-25 16:30:01 1602

转载 Android窗口机制分析与UI管理系统

类图关系  在看Android的窗口机制之前,先看看其主要的类图关系以及层级之间的依赖与调用关系       1.window在当前的android系统的中的呈现形式是PhoneWindow  (frameworks/base/policy/src/com/android/internal/policy/impl/PhoneWindow.java);  2.WindowMa

2017-06-19 10:16:20 661

转载 2017Android面试题(临时版一)

JAVA 相关1.静态内部类、内部类、匿名内部类,为什么内部类会持有外部类的引用?持有的引用是this?还是其它?静态内部类:使用static修饰的内部类内部类:就是在某个类的内部又定义了一个类,内部类所嵌入的类称为外部类匿名内部类:使用new生成的内部类因为内部类的产生依赖于外部类,持有的引用是类名.this2.Java中try catch fin

2017-06-19 10:09:45 1853

转载 老版本彻底解决Android 应用方法数不能超过65K的问题

作为一名Android开发者,相信你对Android方法数不能超过65K的限制应该有所耳闻,随着应用程序功能不断的丰富,总有一天你会遇到一个异常:Conversion to Dalvik format failed:Unable toexecute dex: method ID not in [0, 0xffff]: 65536可能有些同学会说,解决这个问题很简单,我们只需要在Projec

2017-06-02 19:59:19 910

转载 实现Android 动态加载APK(Fragment or Activity实现)

最近由于项目太大了,导致编译通不过(Android对一个应用中的方法个数貌似有限制),所以一直琢磨着能否将某些模块的APK不用安装,动态加载,通过在网上查找资料和网友的帮助,终于实现了APK的动态加载,网络上介绍APK动态加载的文章非常多,但是我觉得写得非常好的就是这位大牛的,我基本上就是使用他的这种方案,然后加入了自己的元素。这位大牛是通过Activity实现的,我稍作修改,通过Fragment

2017-06-02 19:56:41 667

转载 Activity与Fragment易混点归纳

Android开发中Activity和Fragment是非常重要的两个知识点,这里我们就分别归纳一下,在使用Activity和Fragment时需要注意的一些事项,特别是对于Fragment,在对其进行管理时我们要选择好的一些方式。一、Activity要点Activity负责展示UI给用户,负责和用户的交互操作。本部分主要对Activity的生命周期、如何保存状态信息、如何讲一个A

2017-05-31 14:06:56 481

转载 Android智能心跳微信

前言:在13年11月中旬时,因为基础组件组人手紧张,Leo安排我和春哥去广州轮岗支援。刚到广州的时候,Ray让我和春哥对Line和WhatsApp的心跳机制进行分析。我和春哥抓包测试了差不多两个多礼拜,在我们基本上摸清了Line和WhatsApp的心跳机制后,Ray才告诉我们真正的任务——对微信的固定心跳进行优化,并告诉我们这不是一件容易的事情。于是我和春哥开始构思第一个方案,我们开始想用统计的方

2017-04-24 18:21:14 766

转载 Android中保持Service的状态

关于如何让Service keep alive,我在上篇博客给出的解决方案是:方案一,让服务器端发一个推送,检查Service是否还存活;方案二,将Service独立出来,运行在另一个进程中。这两个方案有些地方需要说明和改进,然后还会有其他方案补充进来。方案一:利用推送来确保Service存活。方案一的做法有点“偷懒”。因为相当于把这个难题转移给推送服务提供者来处理,或者说

2017-04-24 17:31:42 866

转载 开发思想-流的本质

引言如何在流程中获得良好的“流(flow)”?近日,我在瑞典斯德哥尔摩参加了一场“精益咖啡”会议。在会上,有个人描述了他们的情况,一个有四名开发人员的团队需要服务于四名不同的产品经理的需求。她说这种情况太分散。这引发了我对于这种我认为非常常见的情况以及精益和敏捷如何帮助解决这个问题的思考。一个有瓶颈的流程这是一张通用的流程描述图片。它可以描述任何类型的流程,请求从流程的一端进入,交

2017-04-21 17:51:46 429

原创 Json序列化框架之Gson Api详解

Gson框架使用其实很简单,但大部分人可能只用了其中的部分功能,由于工作或功能的限制,没有太多时间去整体看看Gson到底能帮我们在数据序列化上做哪些事情,这篇文章准备根据Gson官方的API文档,同时结合项目中使用的情况做一个分享!下面根据API 2.8.0文档里的顺序来一一解读API的内容(类名后面括号中的字符代表含义:I->interface、An->annotation、Ab->abst

2017-04-18 15:08:13 3437

原创 Json序列化框架之Gson使用方法

目前有好多序列化框架工具,可以大大的帮我们解决对象序列化的操作,目前比较流行的json序列化框架 google提供的Gson。之前用户Jackson,感觉gson和jackson很像,gson毕竟是google提供的 所以知名度比较高,这篇文章就来说说关于gson的用法以及在开发中的一些典型的json序列化情况总结:1. 基础json序列化:2. 特殊类型:3. 指定哪些字段可以被序列

2017-04-18 14:48:52 732

转载 CSDN日报20170411

[-]程序人生如何给自己的私活项目标价 作者瞬息之间物联网 LoRaWAN介绍 - LoRa从业者读这篇就够了 作者IoT小能手Android 开发快来看看Google出品的Protocol Buffer别只会用Json和XML了 作者Carson_Ho架构再谈缓存穿透缓存并发热点缓存之最佳招式 作者小程故事多云计算 Docker mesos 在生产环境的应用 作者杨步涛iOS 开发深入理

2017-04-12 18:06:45 458

转载 详解Android 教你打造高效的图片加载框架

优秀的图片加载框架不要太多,什么UIL , Volley ,Picasso,Imageloader等等。但是作为一名合格的程序猿,必须懂其中的实现原理,于是乎,今天我就带大家一起来设计一个加载网络、本地的图片框架。有人可能会说,自己写会不会很渣,运行效率,内存溢出神马的。放心,我们拿demo说话,拼得就是速度,奏事这么任性。关于加载本地图片,当然了,我手机图片比较少,7000来张:

2017-02-21 10:32:39 1179

转载 Android开发:最全面、最易懂的Android屏幕适配解决方案

前言Android的屏幕适配一直以来都在折磨着我们Android开发者,本文将结合:Google的官方权威适配文档 郭霖: Android官方提供的支持不同屏幕大小的全部方法 Stormzhang:Android 屏幕适配 鸿洋:Android 屏幕适配方案 凯子: Android屏幕适配全攻略(最权威的官方适配指导) 自身的思考&实践给你带来一种全新、全面而逻辑清晰的Androi

2017-02-10 13:35:53 1824

转载 Android屏幕自适应

以下是Demo首页的预览图demo下载:http://www.eoeandroid.com/forum.php?mod=attachment&aid=NjE0Njh8ZTIyZDA2M2N8MTMzODgyOTQxN3w1NzAwOTV8MTczOTcz一、细说layout_weight    目前最为推荐的Android多屏幕自适应解决方案。    该属性

2017-02-10 11:34:12 376

转载 Makefile教程

概述——什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写m

2017-02-08 11:27:35 553

转载 Git中的merge命令实现和工作方式

代码库中存在两个分支,并且每个分支都进行了修改,最后你想要将其中的一个分支合并到其他的分支中。那么要问合并的处理过程是怎么样的呢?Git是对每个分支,依据分支的历史数据按照序列化操作,还是它只是合并每个分支里文件的最后版本?这是一个问题,我想对git的merge操作有必要进行分析一下。回忆一下,我们知道Git的版本库内部结构是以有向无环图(directed acyclic graph)组织

2017-02-05 12:11:40 1696

转载 Android中View绘制流程

前言: 本文是我读《Android内核剖析》第13章----View工作原理总结而成的,在此膜拜下作者 。同时真挚地向渴望了解     Android 框架层的网友,推荐这本书,希望你们能够在Android开发里学到更多的知识 。                       整个View树的绘图流程是在ViewRoot.Java类的performTraversals()函数展开

2017-01-14 10:43:21 431

转载 码流 / 码率 / 比特率 / 帧速率 / 分辨率 / 高清的区别

GOP/ 码流 /码率 / 比特率 / 帧速率 / 分辨率GOP(Group of picture) 关键帧的周期,也就是两个IDR帧之间的距离,一个帧组的最大帧数,一般而言,每一秒视频至少需要使用 1 个关键帧。增加关键帧个数可改善质量,但是同时增加带宽和网络负载。 需要说明的是,通过提高GOP值来提高图像质量是有限度的,在遇到场景切换的情况时,H.264编码器会自动强制插入一个I帧,此时实际的

2016-09-12 10:28:35 1464

转载 Android UI适配

前言Android设计之初就考虑到了UI在多平台的适配,它本身提供了一套完善的适配机制,随着版本的发展适配也越来越精确,UI适配主要受平台两个因素的影响:屏幕尺寸(屏幕的像素宽度及像素高度)和屏幕密度,针对不同的应用场景采用的适配方案也不一样,此文档仅针对Android4.0及以下版本相关概念分辨率:整个屏幕的像素数目,为了表示方便一般用屏幕的像素宽度(水平像素

2016-09-09 16:54:42 623

原创 视频---码率、帧率、清晰度、分辨率、流畅度的关系与设置

举一个可能不恰当的例子,如果把画面清晰度比作自来水龙头的出水量,那么码率大概就是自来水管网的水压,720p/1080p就相当于自来水管网的直径,而屏幕分辨率则是家里的自来水龙头的粗细。这些因素决定的是一个系统在整体或局部的最大能力或最高性能,而水龙头水流量是否充足,除了这些系统因素的影响,更重要的是水源地的水源是否充足。如果被摄景物本身就是全白,或摄像机性能低下,那么,再好的编码、再高的码率、再好

2016-07-18 22:01:33 7180

转载 H264 GOP 扫盲

提供基于SIP的通信服务器(企业级UC,电话会议,调度系统等)及客户端解决方案,承接 sip/ims 视频客户端开发,支持接入sip软交换,ims核心网,支持 语音,视频,即时通信功能,视频格式支持 h263,h264,mpeg4 软编软解,提供硬件编解码接口对接,提供服务器,有兴趣请联系我。在视频编码序列中,主要有三种编码帧:I帧、P帧、B帧,如下图所示。  ● I帧即Intra

2016-07-17 22:32:14 1329

原创 Android开发代码格式规范

书写规范1. 编码方式统一用UTF-8. Android Studio默认已是UTF-8,只要不去改动它就可以了。2. 缩进统一为4个空格,将Tab size设置为4则可以保证tab键按4个空格缩进。另外,不要勾选上Use tab character,可以保证切换到不同tab长度的环境时还能继续保持统一的4个空格的缩进样式。3. 花括号不要单独一行,和它

2016-07-12 20:56:20 3390

翻译 Android高性能开发规范探索 一

1.尽量少的声明全局变量2.声明全局静态变量,一定要加final声明3.声明非静态的全局变量,最好不要初始化任何值,在使用到的地方,在进行初始化4.函数中若干次使用全局变量,应该将全局变量赋值给本地变量,然后直接使用本地变量5.能用Int,不要使用浮点数 6.能用乘法不用除法7.尽量避免使用geter和setter方法8.在Activity的

2016-07-12 20:51:52 469

转载 Android 状态栏、titlebar的高度计算

日常开发中我们经常会因为绘图、绘制自定义组件、定位组件或者是计算布局高度需要减去状态栏高度等需要来获取Activity界面中状态栏、标题栏的高度。但很多人马上要拿起来就用还是会遇到各种各样的问题,一时要查很多资料,很是不爽!今天也是猛然发现这个问题费了不少时间,终于有所收获,特地记录下来,希望给遇到同样问题的你一点帮助,也给以后留个笔记。废话少说,开始正题吧——        一、Activi

2016-07-08 18:42:02 1038

转载 Android中的Interpolator

Interpolator用于动画中的时间插值,其作用就是把0到1的浮点值变化映射到另一个浮点值变化。  本文列出Android API提供的Interpolator的若干种实现,列出源码,并且用一个程序绘制出其数学曲线。(项目链接附在文后)。 AccelerateDecelerateInterpolator/** * An interpolator where

2016-07-08 16:25:28 434

转载 Android 属性动画(Property Animation)二

ObjectAnimator实现动画,ValueAnimator实现动画,AnimatorSet的使用等~当然了属性动画还有一部分的知识点,也能做出很不错的效果,将在本篇博客为您展示~1、如何使用xml文件来创建属性动画大家肯定都清楚,View Animator 、Drawable Animator都可以在anim文件夹下创建动画,然后在程序中使用,甚至在Theme中设

2016-07-08 15:33:41 417

转载 Android 属性动画(Property Animation)一

1、概述Android提供了几种动画类型:View Animation 、Drawable Animation 、Property Animation 。View Animation相当简单,不过只能支持简单的缩放、平移、旋转、透明度基本的动画,且有一定的局限性。比如:你希望View有一个颜色的切换动画;你希望可以使用3D旋转动画;你希望当动画停止时,View的位置就是当前的位置;这些Vi

2016-07-08 15:32:06 350

转载 Android动画详解

3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:property animation,这三种动画模式在SDK中被称为property animation,view animation,drawable animation。 1. View Animation(Tween Animati

2016-07-08 15:27:30 415

转载 Android View坐标

其实只要把下面这张图看明白就没问题了。涉及到的方法一共有下面几个:view获取自身坐标:getLeft(),getTop(),getRight(),getBottom()view获取自身宽高:getHeight(),getWidth()motionEvent获取坐标:getX(),getY(),getRawX(),getRawY()首先是

2016-07-06 13:58:26 366

转载 java多线程状态及interrupt()方法

在java多线程中,线程的状态有 NEW, Runnable, Blocked, Waiting, Timed_Waiting, Terminated. 这是java虚拟机下的线程状态,与操作系统下的线程状态略有不同。线程状态以枚举类型定义在Thread.State中,并且当前线程可以通过getState()方法获取当前线程的状态。Runnable其实可以有两种状态,一种是获得了cpu,这在运行,

2016-07-01 16:56:02 498

转载 java代码注释规范(二)

一、背景 1、当我们第一次接触某段代码,但又被要求在极短的时间内有效地分析这段代码,我们需要什么样的注释信息? 2、怎么样避免我们的注释冗长而且凌乱不堪呢? 3、在多人协同开发、维护的今天,我们需要怎么样的注释来保证高质、高交的进行开发和维护工作呢? 二、意义 程序中的注释是程序设计者与程序阅读者之间通信的重要手段。应用注释规范对于软件本身和软件开发人员而言尤为重要。并且在流行

2016-07-01 10:20:36 10344

Dagger 工作随笔

对Dagger的使用随笔总结,对其中的疑惑或问题的验证总结。

2015-04-10

ASP.NET编程技巧

ASP.NET的一些常用技巧总结.希望对好学的童鞋有所帮助!

2013-05-07

GridView实用详解

关于Asp.net webForm时代的常用控件GridView使用详解和示例。

2013-04-13

JavaScript基础知识总结

个人总结 对新学者有帮助,重点地方有颜色标记,好好学习 学无止尽

2012-08-29

ajax基础应用

一些javascript的基础应用描述,实际应用开发

2012-05-19

html—div固定

html 基础应用 div层在浏览器的定位显示

2012-05-19

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

TA关注的人

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