自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王宁的博客

Android资深工程师

  • 博客(13)
  • 收藏
  • 关注

原创 Android Gradle Composing builds 管理三方依赖

Android Gradle Composing builds 管理三方依赖

2022-04-01 19:06:28 4045 3

原创 RecyclerView嵌套在ScrollView中显示不全

ScrollView嵌套RecyclerView在Android6.0以下能正常显示,但是在6.0以上就会出现RecyclerView显示不全的bug。尝试多种方法之后终于找到解决办法,特在此记录下。解决方案在RecyclerView的外部套上一层RelativeLayout <RelativeLayout android:layout_width="match_p...

2019-08-08 16:03:24 373

原创 HHKB快捷键

键盘自带快捷键Ctrl + a,回到行Ctrl + e,跳到行末Ctrl + d,删除光标后一个字符Ctrl + h,删除光标前一个字符,等效于 backspaceCtrl + k,删除本行内光标后所有字符Ctrl + u,删除本行内光标前所有字符Ctrl + b,←Ctrl + f,→Ctrl + p,↑Ctrl + n,↓自定义按键 快捷键我们需要通过第三方APP去...

2019-07-12 10:29:49 4447

原创 Fragment生命周期以及 常见的切换生命周期发生的变化

Fragment生命周期以及 常见的切换生命周期发生的变化首先介绍下,Activity和Fragment生命周期的对比与Fragment的生命周期,如图:Fragment相关操作对生命周期的影响添加Fragment可以分为静态添加和动态添加两大类。静态添加是在XML中直接添加Fragment,简单方便,缺点是添加之后不能在删除。动态添加是在代码中FragmentManger使用一系列...

2019-05-02 15:11:46 1138

原创 Handler, Message, Looper, ActivityThread

Android面试之 Handler, Message, Looper, ActivityThreadHandler, Message, Looper, ActivityThread关键词 nativePollOnce nativeWake ActivityThread并不是Thread ActivityThread使用attach方法将主进程与AMS服务绑定起来 消息队列并不会阻塞 因为所有...

2019-04-28 10:50:57 140

原创 AndroidVideoCache 原理

原始的方式是直接塞播放地址给播放器,它就可以直接播放。现在我们要在中间加一层本地代理,播放器播放的时候(获取数据)是通过我们的本地代理的地址来播放的,这样我们就可以很好的在中间层(本地代理层)做一些处理,比如:文件缓存,预缓存(秒开处理),监控等。采用了本地代理服务的方式,通过原始url给播放器返回一个本地代理的一个url ,代理URL类似:http://127.0.0.1:57430/ 真...

2019-04-26 14:41:31 862

原创 Binder机制

Android面试之Binder机制简单说一下Android的Binder机制,你会怎么回答?Binder是CS架构的,有对应的协议, 其中定义了众多的命令和数据结构来在不同的进程间传递数据。在不同的进程间传递数据,是通过驱动的ioctl命令来对数据进行读写操作,也就是说,很多数据是在驱动中交互的。在Android启动的时候,Zygote进程孵化出第一个子进程叫SystemServer...

2019-04-26 14:33:39 470

原创 volley 内部实现分析及二次封装

## volley源码下载地址 ##针对上图并结合业务功能做了如下的封装:添加HttpManager 初始化RequestQueue 并提供 addRequest封装Request支持直接解析json(Gson库解析)封装ErrorListener 通知调用方请求结果添加RequestFactory,为创建Request而存在代码片段 HttpManager.javapublic fi

2016-03-17 03:06:00 311

转载 Activity之间使用intent传递大量数据带来问题总结

转载请注明: 大飞 http://blog.csdn.net/rflyee/article/details/47441405 Activity之间使用Parcel传递大量数据产生的问题。Activity之间通过intent传递大量数据,导致新Activity无法启动。Activity之间数据传递方式总结参考 这 里。比较常用的是直接利用intent传递,比如使用bundle,如下:

2016-03-15 18:36:43 325

原创 Shell命令行下如何查找并替换多个文件中的字符

如果你在shell命令行下,需要一种能快速查找并替换多个文件里字符的方法, 那么下面这行命令你一定要记住或者收藏起来,它能帮到你的。find . -name '*.html' -print0 | xargs -0 perl -pi -e 's/SEARCHSTRING/REPLACESTRING/g'注解: *.html:表示查找所在目录下的所有扩展名为html的文件; SEARCHSTRIN

2016-02-25 12:04:51 1514 1

转载 Android 常用开发工具以及Mac常用软件

Android 常用的开发工具记录。其中包括AndroidStudio(IDEA)插件、Mac 上好用的软件以及国内知名Android开发者博客等。Android Studio 插件codota 插件,提供高质量的Android代码片段搜索,官方网站codota官网Android 网站Android Developer Androuid 官网,不解释

2015-09-26 20:07:17 607

转载 Android 处理多线程

Android 处理多线程时,不能在线程范围内调用UI,通过这个方式能够很好的在线程中,对UI进行控制。 /*多线程处理-程序加载线程*/  private class LoginFromTask extends UserTask {  /**   * 线程启动初始化操作   */  @Override  public void onPreExecute()

2015-09-26 19:17:40 268

转载 java上传图片放大(小图等比放大,大图等比裁剪)

import java.awt.Graphics; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import javax.imageio.Image

2015-09-09 19:11:00 625

空空如也

空空如也

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

TA关注的人

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