- 博客(20)
- 资源 (64)
- 收藏
- 关注
原创 从源码的角度理解Volley
概述今天从源码的角度来理解一下Volley中部分功能的实现。源码添加请求到请求队列/***将请求添加到请求队列中*/ public <T> Request<T> add(Request<T> request) { // 标记此request属于当前这个请求队列 request.setRequestQueue(this); synchronize
2016-06-30 11:25:22 282
原创 Java编程题
1.实现字符串反转 public static String reverseIt(String str){ int i; int len=str.length(); StringBuffer sb = new StringBuffer(len); for(i=(len-1);i>=0;i--){ sb.appe
2016-06-27 16:16:34 381
转载 RxJava中的问题
生命周期如何处理Activity的生命周期?主要就是两个问题: 1.在configuration改变(比如转屏)之后继续之前的Subscription。比如你使用Retrofit发出了一个REST请求,接着想在listview中展示结果。如果在网络请求的时候用户旋转了屏幕怎么办?你当然想继续刚才的请求,但是怎么搞?2.Observable持有Context导致的内存泄露这个问题是因为创建subs
2016-06-21 15:30:37 1490
原创 Socket实现进程间通信
概述Socket也称为“套接字”,是网络通信中的概念,它分为流式套接字和用户数举报套接字两种,分别对应于网络的传输控制层中的TCP和UDP协议。TCP协议是面向连接的协议,提供稳定的双向爱那个通信功能,TCP连接的简历需要经过”三次握手”才能完成为了提供稳定的数据传输功能,其本身提供了超时重传机制,因此具有很高的稳定性;而UDP是无连接的,提供不稳定的单向通信,当然UDP也可以实现双向通信功能。在性
2016-06-17 16:39:18 2794
原创 ImageLoader相关笔记
两种方式加载图片:loadImagedisplayImage ImageLoader.getInstance().loadImage(imageUrl, mImageSize, options, new SimpleImageLoadingListener(){ @Override public void onLoadingComplete
2016-06-16 15:31:34 604
原创 ViewGroup对子View的测量与布局
//命令每个子View对自身进行测量 protected void measureChildren(int widthMeasureSpec, int heightMeasureSpec) { //获取子View数量 final int size = mChildrenCount; //包含子View的数组 final View[] childre
2016-06-16 13:24:35 870
原创 Volley源码总结
基本操作1.创建一个请求队列RequestQueue mQueue = Volley.newRequestQueue(context); 2.创建具体的请求对象StringRequest stringRequest = new StringRequest("http://www.baidu.com", new Response.Listener<S
2016-06-15 16:46:43 308
原创 Android性能优化总结
首先讲讲如何避免OOM总结起来,可以从四个方面着手,首先是减小对象的内存占用,其次是内存对象的重复利用,然后是避免对象的内存泄露,最后是内存使用策略优化。关于性能优化 因为Android性能优化涉及到的东西比较多,有兴趣的可以看看下面的链接 Android性能优化典范这里我把比较重要的地方进行一个总结合理管理内存分析内存使用情况高性能编码优化布局优化
2016-06-15 15:30:45 241
原创 开源项目学习(微阅)
概述今天开始学习一个新的项目,微阅,先看看效果图然后我们看看项目的组织结构这个项目也是采用MVP模式开发的,api包中是访问数据的接口,相当于M层,presenter包中相当于P层,调用api中的接口去访问数据,然后交给View层显示。笔记更改导航栏的颜色(5.0以上才支持),效果图如下相关代码如下 //更改底部导航栏的颜色,只有版本大于21,也就是5.0才支持 if (Build
2016-06-13 17:20:51 1084
原创 NavigationView使用
效果<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/draw_layout" androi
2016-06-13 16:25:22 408
原创 CollapsingToolbarLayout
效果图代码实现这里我们主要用到CollapsingToolbarLayout CollapsingToolbarLayout包裹 Toolbar 的时候提供一个可折叠的 Toolbar,一般作为AppbarLayout的子视图使用。<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.andro
2016-06-13 15:43:00 601
转载 CoordinatorLayout结合AppBarLayout
效果图当我们向上滑动的时候隐藏ToolBar,向下滑动的时候显示ToolBar实现<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-au
2016-06-13 14:30:05 336
原创 Android 新特性学习
概述又到了项目学习的时间,今天所要学习的是一个新闻客户端,微阅,项目地址如下 微阅 我们开始学习吧。笔记首先我们来集成一个Bug管理平台微阅Bug管理ToolBar<android.support.v7.widget.Toolbar android:id="@+id/my_toolbar" android:layout_width="match_parent" android:
2016-06-12 10:35:46 346
原创 自定义进度条
概述今天继续学习自定义View,今天的内容是自定义进度条,我们分为条i系那个进度条和圆形进度条条形进度条先看效果图首先我们要做到就是分析需要哪些自定义属性,然后我们在attrs文件中需要去声明这些属性,我们很容易分析出来有如下属性<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="Progre
2016-06-06 19:00:55 967
原创 Android实现异步加载
效果图代码public class ImageLoader { private InputStream inputStream; private HttpURLConnection conn; private ImageView mImageview; private LruCache<String,Bitmap> mLrucache; private List
2016-06-06 15:59:43 340
转载 ListView局部刷新的问题
有时候,我们需要更改ListView中某一个Item样式,假如这个时候使用notifydatasetChanged去刷新整个界面是没有必要的,今天我们看看如何只刷新指定条目的Item. public class ListAdapter extends BaseAdapter { private List<Model> datas; private Context context;
2016-06-03 16:23:02 1146
原创 Android群英传读书笔记第10章(Android性能优化)
Android UI渲染机制在Android中,系统通过VSYNC信号触发对U的渲染、重绘,其时间间隔是16ms.Android提供了检测UI渲染时间的工具,打开开发者选项,选择 GPU呈现模式分析,然后选择在屏幕上显示为条形图 蓝色代表测量绘制DisplayList的时间,红色代表OpenGL渲染Display List所需要的时间,黄色代表CPU等待GPU处理的时间。中间的绿色横线代表VSY
2016-06-03 14:25:34 244
原创 Android群英转读书笔记第9章(Android 系统信息与安全机制)
如何获取系统信息Build类SystemPropertyAndroid安全机制五道防线代码安全机制应用接入权限控制应用签名机制Linux内核安全机制虚拟机沙箱机制apk反编译
2016-06-02 17:30:42 326
原创 Android群英传读书笔记第八章(Activity与Activity调用栈分析)
SingleTop模式通常用于接收到消息后显示的界面,例如QQ接收到消息后弹出Activity,如果一次来10条消息,总不能一次弹10个Activity。如果启动模式为SingleTask的Activity已经在后台一个任务栈中,那么启动会,这个后台任务栈将一起被切换到前台。这种启动模式通常可以用来退出整个应用:将主Activity设置为SingleTask模式,然后在要退出的Activity中转到
2016-06-02 16:07:54 328
原创 Android群英转读书笔记第七章(Android动画机制与使用技巧)
动画的分类动画分为视图动画(View)和属性动画(Property),而视图动画又分为Tween动画和Frame动画,属性动画又分为ValueAnimator和ObjectAnimator.属性动画简介从Android3.0开始出现,真实改变View的属性,可以响应事件使用ObjectAnimator时,对象的属性必须有get和set方法,因为内部会通过反射来调用属性的set方法,如果一个属性没有g
2016-06-01 14:36:49 331
HexEditor.dll
2020-06-12
Android热修复实现
2018-06-22
极光推送Demo
2016-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人