自定义博客皮肤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知识梳理

Android中5种布局 :FrameLayout,LinearLayout, RelativeLayout, TableLayout全部继承ViewGroupActivity和Fragment的关系: onAttach(fragment)--> onCreate(fragment)...

2018-03-15 10:22:53 586 0

原创 自定义RecyclerView 分隔线

public class DividerItemDecoration extends RecyclerView.ItemDecoration { /** * 横向 */ public static final int HORIZONTAL = LinearLay...

2020-04-26 10:51:07 65 0

原创 Android缓存小图片工具

public final class SmallBitmapLruCache extends LruCache<String, Bitmap> { private static final String TAG = "BitmapLruCache"; ...

2020-04-26 10:39:49 32 0

原创 字体工具类

public final class FontsUtils { /** * HwChinese-medium字体的familyName */ public static final String HW_CHINESE_MEDIUM_FAMILY_NAME = ...

2020-04-26 10:29:09 70 0

原创 超曲面屏工具类

public final class CurvedScreenUtils { private static final String TAG = TagPrefix.HRWIDGET + "CurvedScreenUtils"; /** * 单例 ...

2020-04-26 10:27:16 62 0

原创 沉浸样式设置工具

public final class ImmersiveUtils { private static final String TAG = TagPrefix.HRWIDGET + "ImmersiveUtils"; /** * RGB 模式转换成 ...

2020-04-26 10:26:38 54 0

原创 Flutter 环境搭建和第一个Flutter应用

本文基于mac系统   首先给出flutter中文官网地址 https://flutterchina.club/get-started/install/ 根据官网流程,当然可以一撸到底,正常情况下,都是正常的。可是,根据个人经验,踩坑是必然的。 主要分为3个步骤: 1 Flutter S...

2018-11-07 21:06:01 1228 0

原创 Retrofit源码总结

**本文总结基于Retrofit 2.4.0** GitHub:  [https://github.com/square/retrofit](https://note.youdao.com/) 官方文档:  [https://square.github.io/retrofit/](https:...

2018-10-26 19:43:47 132 0

原创 混淆实用小技巧总结

一 为什么要混淆 java源代码通过编译成字节码文件存储在.class文件中,字节码文件中包含了变量名,方法名等信息,而程序是通过这些名称来访问变量和方法的,这些信息很容易反编译成java源代码,所以需要通过proguard来对java字节码进行混淆,而混淆前后的代码具有相同的功能。   P...

2018-10-08 18:51:42 95 0

原创 Android自定义View基础知识总结

自定义View关键点 1 自定义绘制的方式是重写绘制方法,其中最常见的是onDraw()方法。 2 绘制的关键点是Canvas的使用 (1)Canvas的绘制类方法:drawXXX(xxx),关键参数是Paint。 (2)Canvas的辅助类方法:范围裁切和几何变换。 自定义绘制知识的四...

2018-09-30 20:46:06 109 0

原创 记2018年8月Android面试分享

个人简介 先说一下个人情况吧,毕业安徽省内一所二流的普通本科院校,就这都是使出洪荒之力,集日月之精华,收天地之灵气,方得硕果,真是汗颜。没有211,985的名校光环,没有可以纨绔霍霍的家庭背景,也没有经天纬地的大脑,更没有迷倒千万少女的盖世容颜,有的是一张蜜汁自信的脸庞,和一个健康壮硕的身体,如...

2018-09-24 21:15:54 127 1

转载 关于android studio 出现Error:Execution failed for task ':app:preDebugAndroidTestBuild'. 的解决办法

https://blog.csdn.net/fighting_2017/article/details/80244982

2018-09-11 18:49:47 419 0

原创 屏幕适配升级之今日头条总结

因为Android系统的碎片化,手机分辨率和尺寸的多样化所以开发中经常需要进行屏幕适配。 看了今日头条的技术博客之屏幕适配觉得很NB,看完之后,学到很多,以下作为基础部分回顾以及对适配方案进行总结 这是今日头条传送门。   回顾一下基本知识: 屏幕尺寸 是指屏幕对角线的长度 分辨率 是指...

2018-09-02 15:18:29 407 0

原创 熟悉的Handler,再看源码重新了解

Handler在Android中主要用于组件之间或者线程之间消息通信机制,主要有四个核心元素:Handler  Message  MessageQueue  Looper。   这里说一下简单原理:通过调用handler.sendMessage()方法将Message添加到消息队列Messag...

2018-08-31 11:32:10 70 0

原创 OkHttp通俗易通的总结,没有源码分析

OkHttp: 是一个高性能的网络请求库,支持同步和异步,支持拦截器处理,支持线程池,数据转换,参数配置,错误处理等。 OkHttp是一个偏底层的网络请求库,还需要进行一些合理封装,便于使用。 1创建一个OkHttpClient对象。 2创建Request对象。 3通过OkHttpClie...

2018-08-12 21:50:34 86 0

原创 开发艺术探索--关与Binder总结

Binder是Andriod中的一个类,它实现了IBinder的接口,在Android中是一种跨进程的通信方式。充当服务端和客户端的桥梁,当通过bindService和服务端连接的时候,服务端会返回一个Binder对象,通过这个对象就可以获取服务端的数据和服务了。   和Socket相比,So...

2018-08-12 21:42:02 78 0

原创 Window Activity View 三者的关系

Window表示一个窗口,这是一个抽象类,具体的实现是PhoneWindow,可以通过WindowManager来创建一个Window。 Activity是Android四大组件,主要和用户进行交互,View是视图对象。   Android中所有的视图都是通过Window来呈现的,不管是Ac...

2018-08-12 21:40:21 99 0

原创 Android模块化和组件化开发简单理解(一)

模块化和组件化可以理解为同一个概念: 将一个app分成多个模块,每个模块都是一个组件(module),开发过程中让这些组件相互依赖或者单独调试某个组件。在发布的时候将这些组件合并成一个apk。 Android组件化我的理解是 application与library之间相互转换。 因为 在An...

2018-08-09 17:29:38 1398 0

原创 android edittext 搜索关键字带空格,引起url异常的问题

做搜索功能,当在edittext中输入带空格的关键字时,无法从服务器获得数据,跟踪一看是url异常,网上搜了搜找到这个URLEncoder.encode(keyword),将你获得的关键字编码后,再加到url中就可以了...

2018-05-16 10:24:20 168 0

原创 碰到https请求下发送http请求问题

HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法。HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)简单讲是HTTP的安全版,在HTTP下加入SSL层。S...

2018-04-27 15:05:11 8032 0

原创 ScrollView、ListView、RecycleView嵌套其他的滑动布局引发的自动滑动问题

RecycleView等滑动组件嵌套listView,gridView等其他滑动组件引发的自动滑动尤其当l嵌套的istView或gridView在屏幕底部或超出屏幕时尤为明显。一般出现这种情况是焦点问题,这时如果不想listView或girdView获取焦点的话,需要在被嵌套的组件的父布局的根布局...

2018-03-29 17:44:15 244 0

原创 生存有道,买房不易,珍惜拥有,时光不老

看完这篇文章,内心久久不能平复,只能说一句:生存有道,买房不易,珍惜拥有,时光不老,希望大家能和未来的他/她,能相伴相随开心,健康一辈子,白了头,弯了腰,一起散步的时光里,有你相随,共忆时光.......(生命中除了房子,还有其他,给你也给我,能够看透这个现实的世界)一个工薪阶层2017年在萧山买...

2018-03-07 11:53:41 231 0

原创 15_Android性能优化

本章是最后一章,主题是Android的性能优化方法和程序设计的一些思想。通过本章的内容,读者可以掌握常见的性能优化方法,这将有助于提高Android程序的性能:另一方面,本章还讲解了Android程序设计的一些思想,这将有助于提高程序的可维护性和扩展性。Android设备作为一种移动设备,不管是内...

2018-02-24 18:05:58 169 0

原创 14_JNI和NDK编程

java JNI的本意是java Native Interface(java本地接口),它是为了方便java调用C、C等本地代码所封装的一层接口。我们知道,java的优点是跨平台,但是作为优点的同时,其在和本地交互的时候就出现了短板。java的跨平台性导致其本地交互的能力不够强大,一些操作系统相关...

2018-02-24 17:19:15 136 0

原创 13_综和技术

本章介绍的主题在日常开发中使用频率略低,但是对它们有一定的了解仍然是很有必要的。我们知道,不管程序怎么写都很难避免不crash,当程序crash后虽然无法让其再继续运行,但是如果能够知道程序crash的原因,那么就可以修复错误。但是很多时候产品发布后,如果用户使用时发生了crash,这个crash...

2018-02-24 16:15:50 149 0

原创 12_Bitmap的加载和Cache

本章的主题是Bitmap的加载和Cache,主要包含三个内容。首先讲述如果有效地加载一个Bitmap,这是一个很有意义的话题,由于Bitmap的特殊性以及Android对单个应用所施加的内存限制,比如16MB,这导致加载Bitamp的时候很容易出现内存溢出。java.lang.OutofMemor...

2018-02-11 17:57:54 133 0

原创 11_Android的线程和线程池

线程在android中是一个很重要的概念,从用途上来说,线程分为主线程和子线程,主线程主要处理和界面相关的事情,而子线程则往往用于执行耗时操作。除了Thread本身以外,在Android中可以扮演线程角色的还有很多,比如AsyncTask和IntentService,同时HandlerThread...

2018-02-11 16:16:14 86 0

原创 10_Android的消息机制

从开发的角度来说,Handler是Android消息机制的上层接口,这使得在开发过程中只需要和Handler交互即可。Handler的使用过程很简单,通过它可以轻松地将一个任务切换到Handler所在的线程中去执行。很多人认为Handler的作用是更新UI,这的确没错,但是更新UI仅仅是Handl...

2018-02-11 14:12:09 97 0

原创 9_四大组件的工作过程

四大组件分别是Activity、Service、BroadcastReceiver和ContentProvider。首先对四大组件的运行状态和工作方式做一个概括化的描述,接着对四大组件的工作过程进行分析。通过分析它们的工作过程我们可以更好地理解系统内部的运行机制。9.1 四大组件的运行状态andr...

2018-02-11 10:24:02 218 0

原创 8_理解Window和WindowManager

Window表示一个窗口的概念,在日常开发中直接接触Window的机会并不多,但是在某些特殊时候我们需要在桌面上显示一个类似悬浮窗的东西,那么这效果就需要用到Window来实现。Window是一个抽象类,它的具体实现是pHoneWindow。创建一个Window是一个很简单的事,只需要通过Wind...

2018-02-09 14:45:33 149 0

原创 7_Android动画深入分析

Android的动画可以分为三种:View动画、帧动画和属性动画,其实帧动画也属于View动画的一种,只不过它和平移旋转等常见的View等常见的View动画在表现形式上略有不同而已。View通过对场景里的对象不断做图像变换(平移、缩放、旋转、透明度)从而产生动画效果,是一种渐进式动画,并且View...

2018-02-08 15:19:49 156 0

原创 5_理解RemoteViews

RemoteViews表示的是一个View机构,它可以在其他进程中显示,由于它在其他进程中显示,为了能够更新它的界面,RemoteViews提供了一组基础的操作作用于跨进程更新它的界面。RemoteViews在android中使用场景有两种:通知栏和桌面小部件。 桌面小部件是通过AppWid...

2018-02-07 16:11:34 105 0

原创 4_View的工作原理

View的底层工作原理,比如View的测量,View的绘制,View的布局。除了View的三大流程,View的常见的回调方法也是需要熟练的,比如构造方法,onAttach、onVisibilityChanged、onDetach等。 4.1 初识ViewRoot和DecorView V...

2018-02-07 11:00:53 174 0

原创 3_View的事件体系

3.1.1 Veiw的基础知识 什么是View:Android 开发中,Activity承担可视化的功能,同时Android系统提供了很多基础控件,View是Android中所有控件的基类,不管是基础的Button和TextView还是复杂的RelativeLayout和RecycleVie...

2018-02-06 10:40:23 116 0

原创 2_IPC进程间通信机制

2.1 AndroidIPC IPC是intent-process-Communication的缩写,跨进程通信或进程间通信。进程和线程是两种不同的概念,线程是cpu调度最小的单元,也是一种有限的系统资源。而进程一般指一个执行单元,在PC和移动设备上指一个程序或者是一个应用。 Andr...

2018-02-02 14:36:41 134 0

原创 1_Activity生命周期分析

声明: 这仅仅是对Android开发大神 任玉刚的作品《Android开发艺术探索》内容的誊写,不存在以广告、盈利等其他任何商业行为,仅仅是因书籍携带不便,不能随时“瞻仰”大神作品,故将书中内容誊写下来,(注:内容全部手打)。 正常情况下Activity生命周期如图 ...

2018-01-24 17:14:36 122 0

原创 新浪微博分享遇到的心酸的问题

/**稀土掘金,时光不老**/ 大家好,O(∩_∩)O哈哈~

2016-05-18 14:53:55 9441 10

原创 Android 打造万能的ViewPagerIndicator 指示器

/**稀土掘金,时光不老**/ 大家好,又是项目中用到的小功能,拿来和大家分享交流一下,如有不足之处,请多多指教哈。O(∩_∩)O哈哈~ 1. 概述。 ViewPager的指示器相信大家都做过了,有用图片,第三方的,有support.design库中TabLayout,也有大多数人都用过的Tab...

2016-04-05 19:01:00 6869 1

原创 Android 应用中使用ContentObserver自动填写短信验证码

/**稀土掘金,时光不老**/ 大家好,最近做项目时,加了一个小功能,手机登录应用或注册时

2016-03-31 18:24:29 919 1

原创 Android-通过自定义ViewPager(中间放大效果)

/**稀土掘金,时光不老**/ 大家好,很早就想写博客了,一是工作忙,二是缺乏原创性,三当然是自己的能力不够啦,写这篇博客是很惶恐。。。。请多多包涵 /**************************** --------   ---------                        ...

2016-03-24 17:11:27 9390 10

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