自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (5)
  • 收藏
  • 关注

原创 View.inflate() 和LayoutInflater.inflate()的区别

前言:既然在平淡的一天,也要坚持给自己找点乐趣。在android开发中,根据布局文件生成View的情况咋们开发中是十分常见的,现在咋们分析下这这两个方法的区别LayoutInflater.inflate() ?public View inflate(@LayoutRes int resource, @Nullable ViewGroup root, boolea...

2019-04-30 11:53:40 940

转载 Android中为什么主线程不会因为Looper.loop()里的死循环卡死?

本片文章纯转载和复制,仅仅用来做留念作者:Gityuan链接:https://www.zhihu.com/question/34652589/answer/90344494来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。要完全彻底理解这个问题,需要准备以下4方面的知识:Process/Thread,Android Binder IPC,Handler...

2019-04-28 16:59:17 128

原创 Android 的主线程为什么不会因为looper的死循环堵塞

前言:每一种创伤,都是一种成熟。在我们学习handler的时候,looper是一个死循环的上图中是源码咋们这边再做一个测试开启一个子线程new Thread(new Testhah(),"我是一个子线程的测试线程").start();/** * @author MR.su * @create 2019/4/28 * @Describ...

2019-04-28 16:57:36 702 1

原创 java.lang.RuntimeException: Stub!

今天运行项目的时候突然发现这个错误这个问题俗一点说,就是一个地方调用了不属于这个地方的库。比如我写java程序,但是我导入了android的相关包,调用android相关包时候会出发这个异常。我就是出现了这个错误在java程序中引入了android 的包...

2019-04-28 16:05:24 11473 2

原创 AS的Debug的一些常用的功能

前言: 技术但求每天进步一点,不求一蹴而就。作为一个开发,Debug是不可缺少的技能,如果一个开发Debug都不熟悉的话,那他肯定不是一个好的开发。下面我分享下我工作中常用的的那些Debug.从上面的图可以看出断点是分类的1 --行断点(每一行的断点)2 --方法断点3 --异常断点他们之间的图标也是不一样的1.行断点1.条件断点...

2019-04-28 15:39:40 5716 1

原创 Android9.0 http网络请求失败

Google为了推进网络请求时数据的安全性,在Android 9.0系统默认都不能用http协议,而要使用https协议,提高数据传输的安全性。直接使用http协议传输数据,会报一下错误:java.io.IOException: Cleartext HTTP traffic to **** not permitted---------------------解决办法一 第一...

2019-04-19 19:37:33 377

原创 postMan的使用教程

一 到官网下载安装包官网的地址 postman的下载地址二、安装完成后,根据下图所示启动Postman点击会让你注册。注册成功后登录三、登陆成功后,创建测试集合,用来管理测试用例你也可以不用这样处理这样可以做请求测试...

2019-04-18 17:44:43 272 1

转载 Android注解篇-各类型注解的意义以及使用场景

前言注解(Annotation),是源码中特殊的语法元数据,类、方法、变量、参数都可以被注解。利用注解可以标记源码以便编译器为源码生成文档和检查代码,也可以让编译器和注解处理器在编译时根据注解自动生成代码,甚至可以保留到运行时以便改变运行时的行为。内置注解@Override 注解用来表明该方法是重写父类方法,编译器会负责检查该方法与父类方法的声明是否一致。@Deprecated 注解用来...

2019-04-18 16:10:15 681

转载 Android注解快速入门和实用解析

首先什么是注解?@Override就是注解,它的作用是: 1、检查是否正确的重写了父类中的方法。 2、标明代码,这是一个重写的方法。1、体现在于:检查子类重写的方法名与参数类型是否正确;检查方法private/final/static等不能被重写。实际上@Override对于应用程序并没有实际影响,从它的源码中可以出来。2、主要是表现出代码的可读性。Override...

2019-04-18 15:58:05 127

原创 annotationProcessor的解释

在日常的Android开发过程,我们不可避免地会在项目中引入一些第三方库,以引入Butterknife为例:api 'com.jakewharton:butterknife:10.1.0'annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'1.什么是annotationProcessorann...

2019-04-18 15:13:25 2813

原创 同步块和同步方法的区别

线程同步问题大都使用synchronized解决,有同步代码块和同步方法的两种方式,主要记一下这两种的区别测试代码: 1 package com.xujingyang.testThread; 2 3 public class SynObj{ 4 public synchronized void showA(){ 5 System.out.printl...

2019-04-15 15:58:54 4601 1

原创 常用的设计模式——单列模式(一)

一、单例模式定义:synchronized是用来控制线程同步的,在多线程的情况下保证代码不被同时执行二,如何实现单列模式呢?synchronized (同步锁(lock))首先我们先讲解下几种synchronized 的用法,给一张图上面的图写的很仔细如果你想更加了解同步锁,可以看下这边博客https://www.jianshu.com/p/d53bf830fa09......

2019-04-15 15:12:46 409 1

原创 MotionEvent.ACTION_CANCEL的解析

对于事件分发中,我们重写onTouchEvent的时候基本都知道1 .MotionEvent.ACTION_DOWN:(对应手势按下的时候)2.MotionEvent.ACTION_MOVE:(对应手势滑动的回调)3MotionEvent.ACTION_UP:(对应手势抬起的回调)基本我们都只处理这三个我平常也处理这三个,只到今天遇到一个问题我积分器的...

2019-04-12 15:09:22 1495

转载 如何在多次提交后给某个commit添加tag

比如你准备以某条commit内容为基准,发布版本。但是你却忘记对其添加tag,这时有两种方法。第一种是版本回退,然后以需要的commit内容为基础,发布版本。这种做法不太推荐,它会丢弃你之后的开发工作,不太推荐。另外一种方法就是今天推荐的。具体方法使用git log查看提交日志,找出你需要的那个commit。假设提交的commit id为“928a92a123456b126eb1234...

2019-04-04 16:25:25 494

原创 AS如何查看第三方库依赖树呢

1.说明AS开发的一个好处是可以引入库,不用引用jar 或者arr,这是很方便的,但因为三方库他可能也会引入其他的一些库导致冲突,那AS有什么方法可以查看三方库的依赖树呢?2.方法方法1:使用 Gradle View 插件优点:简单易用,只用单击就能查看依赖树缺点:没有搜索功能,看着费眼方法2:使用 Gradlew 命令优点:清晰直观,搜索方便缺点:命令略长,需要记一下——...

2019-04-02 15:34:21 2468

原创 Android Studio 如何读取自定义配置的Gradle

工程build.gradle文件的内容可以使用变量的形式定义 ,这样是为了统一管理版本号,特别是对于模块化开发的大项目,这一功能能大大降低版本的不一致性1.首先在根目录下创建文件:config.gradle,内容如下:随便取一个名字就行2.创建gradle文件(已我的为列)ext { ------------这个名字不能改,固定的 ...

2019-04-02 11:13:24 1458

转载 android的广播

想要了解广播定义及相关原理的可以看下这一篇BroadcastReceiver史上最全面解析简单地对广播进行分类吧,广播有两个角色,一个是广播发送者,另外一个是广播接收者广播按照类型分为两种,一种是全局广播,另外一种是本地广播全局广播的意思就是发出的广播可以被其他任意的应用程序接收,或者可以接收来自其他任意应用程序的广播。本地广播则是只能在应用程序的内部进行传递的广播,广播接收...

2019-04-01 11:41:08 169

android 的宽高限定符适配

android 的宽高限定符适配

2022-10-18

FileUtil.java

这是一个文件管理的工具类

2021-02-24

SlideRecyclerView.java

一个完美的侧滑显示删除按钮的recycleView

2021-02-02

查看SQLite数据库文件方法.zip

解决在android开发中不能很好的查看数据库的问题,让可视化话的面对程序员。

2019-05-15

DBMigrationHelper.java

可以自动解决数据库升级保留数据的一些操作,方便开发

2019-05-15

java设计模式.zip

该资源为java的设计模式的一本书,讲解的非常仔细和清楚。

2019-05-09

空空如也

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

TA关注的人

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