- 博客(14)
- 收藏
- 关注
原创 Android多线程编程(二)- 同步通讯与异步通讯
Android多线程编程(二)不管是安卓还是其他的不放呢,同步与异步都是必不可少的知识,我们在学习工作的时候多多少少都会接触到这一部分,今天我就来详细的记录学习一下安卓学习的这一部分,首先我们来了解一下同步与异步的总体知识:同步与异步在我们编写的程序项目中,同步与异步都是并存的,不存在优劣之分,他们在不同的地方执行着自己独有的功能,我们根据不同的情况也会采取不同的通讯方式。比如说,我们这个程序,目前有很多任务,比如用户点击刷新,就会执行触碰判断请求,网络请求,界面刷新请求等很多种,那么我们采用同步和
2020-12-31 17:09:14 1733
原创 Android多线程编程(一)- 线程基础
Android多线程编程(一)到了学习下一部分了,多线程编程一直都是Android经常使用的部份,在进行网络请求或者访问数据库时,为了避免主线程被耗时操作阻塞了进度,通常都会开启子线程进行处理,多线程编程在Android属于相当重要的一部分,接下来的阶段我会开始学习多线程编程,并且把学习笔记记录在这里。我们通常会看到AS抛出的异常,告诉我们**操作不能在主线程中进行,或者说更新UI的操作必须在UI线程中进行,这个所谓的主线程和UI线程其实是同一个,Android应用在创建的时候就会自动的开启一个线程,这
2020-12-30 15:05:41 1827
原创 Timeout waiting to lock journal cache (C:\Users\ts\.gradle\caches\journal-1)
Timeout waiting to lock journal cache (C:\Users\ts\.gradle\caches\journal-1). It is currently in use by another Gradle instance. Owner PID: 2932 Our PID: 4852 Owner Operation: Our operation: Lock file: C:\Users\ts\.gradle\caches\
2020-12-29 14:17:28 5143 2
原创 自定义View从实现到原理(七)- 类似迅雷实现水波纹波浪加载效果
自定义View从实现到原理(七)已经到这一步了啊,这一篇写完基本上自定义View就不会写了,以后有可能的话,也许会写一下自定义ViewGroup或者是自定义View的仿真书籍翻页效果,不过那也是以后的事情了,今天就来实现以下水波纹加载效果,先看一下效果图:类似这种的效果,其实也就是一个自定义的View,接下来我们来一步步实现一下:定义属性首先还是一样,根据效果图,先定义这个View的属性,这个效果我觉得需要圆形的背景颜色,圆形的半径,显示的进度,显示文字的大小,显示文字的颜色,定义属性的代码:&
2020-12-28 20:50:33 5664 6
原创 自定义View从实现到原理(六)- 实现自定义组合控件
自定义View从实现到原理(六)终于回到了实现这一部分,经过了之前的解析,我们从实现到原理,这次再次回到实现,这一次的实现·就不会是像之前那次的简单实现了,经过梳理我们已经有能力写出一些复杂的自定义View,那么就进入到这个系列的最后一节,实现自定义组合控件。实现自定义组合控件所谓自定义组合控件,就是多个空间组合起来成为了一个新的控件,主要用于解决多次重复的使用同一类型的布局,就比如说我们常用的顶部标题栏以及弹出的样式dialog等,这些都很常用,所以将他们所需要的控件组合起来形成一个新的控件,就可以
2020-12-25 14:24:52 6229 4
原创 解析JSON数据-JSONObject以及GSON
解析JSON数据目录解析JSON数据使用JSONObject进行解析针对" { } "进行的JSONObject解析针对" [ ] "进行的JSONObject解析GSONGSONFormat安装使用GSON解析JSON数据JSON数据是我们平时很常见的返回数据了,我们来看一串JSON数据的样式:{ "code": "200", "updateTime": "2020-12-24T09:52+08:00", "fxLink": "http://hfx.link/2bc4", "now"
2020-12-24 15:07:32 5113
原创 Android网络编程(一) - 简要学习记录OkHttp
之前一直用的是HttpURLConnection,实在是麻烦,最近准备把项目换成OkHttp的,在这里简要记录一下大概使用流程,原理等会在后面博客介绍。首先导入包,添加依赖compile 'com.squareup.okhttp3:okhttp:3.9.0'随便导入的,应该不是最新版,接下来就可以在代码中应用了。首先需要创建OkHttpClient的实例:OkHttpClient client = new OkHttpClient();这没什么好说的,正常流程,接下来我们会发起Http请求,
2020-12-23 17:44:57 3702
原创 Project with path ‘***‘ could not be found in project ‘***‘.问题解决方案
在用SVN导入项目的时候,报错Project with path '***' could not be found in project '***'.很烦的一个错误,经过查找之后发现,这个错误是没有引进对应的包,但是项目的build.gradle明明是有导入包的语句的,就很烦,最后解决方案是在项目中的settings.gradle中添加include语句,类似于:include ':***'这里面填的是你找不到的那个包,正常来说这个包都是会在项目中写好的,按照报错语句寻找即可;...
2020-12-22 11:23:29 15765
原创 git官网下载速度太慢解决方法
git下载速度太慢解决方法真是吐了,下载速度稳定20k,我得下一年,也不想网上搜了,直接去淘宝花一块钱买了个下载地址,血赚,就放在这吧,以后没准也用得到:https://npm.taobao.org/mirrors/git-for-windows/真滴快!...
2020-12-22 10:23:05 11740 77
原创 自定义View从实现到原理(五)- View的工作流程(二)
自定义View从实现到原理(五)接着上一篇博客说的,我们这次来梳理View的Measure,Layout以及Draw这三个流程。View的Measure流程我们已经知道了,measure就是用来测量View的宽和高的,不过可以分为View以及ViewGroup这两种情况,但是ViewGroup除了完成自身的测量之外,还要遍历的调用子元素的measure()方法,我们来依次分析一下:View的measure流程首先就来看一下View‘中的onMeasure()方法:protected void o
2020-12-18 15:47:57 3296
原创 自定义View从实现到原理(四)- View的工作流程(一)
自定义View从实现到原理(四)在之前几篇博客我i们已经探讨了View的事件分发机制,接下来就是这一步了,那么我们就来看一下View的工作流程:View的工作流程,指的就是measure,layout和draw。其中measure作用是测量View的宽和高,layout用来确定View的位置,都让我的作用就是用来绘制View了。View的工作流程入口在Activity组成那一部分,最后讲到了DecorView的创建以及它加载的资源,不过这个时候我们的DecorView并没有加载到Window上,因此
2020-12-17 15:50:33 2361
原创 自定义View从实现到原理(三)- 源码解析View的事件分发机制
自定义View从实现到原理(三)上一篇博客我们讲到,在我们点击屏幕时,就会产生点击事件,这些点击事件被封装为了一个类:MotionEvent,而这个时候,我们的点击事件会先传递给当前的Activity,所以我们也有必要了解一下Activity的组成,详细的可以看我上一篇博客:自定义View从实现到原理(二)- 源码解析Activity的构成那么现在我们就正式进入View的事件分发机制。源码解析View的事件分发机制View的事件分发机制点击事件发生之后,首先传递给Activity,这回就会调用A
2020-12-16 18:27:49 2032
原创 自定义View从实现到原理(二)- 源码解析Activity的构成
自定义View从实现到原理(二)View的分发机制在自定义View中属于比较重要的一部分,在这之前,我们有必要了解一下Activity的组成,然后从源码的角度分析View的事件分发机制。源码解析Activity的构成我们都知道,点击事件使用MotionEvent来表示的,在一个点击事件发生之后,首先会传到Activity,那么我们首先要了解一下Activity的构成,在我们写Activity的时候,都会用到类似这个语句来加载对应的布局文件:setContentView(R.layout.activi
2020-12-15 15:57:26 4152 10
原创 自定义View从实现到原理(一)- 自定义View的简单实现
自定义View在我自学Android开发中一直感觉是高手才能掌握的知识,因为情况太多而且界面看起来有很复杂炫酷。但是自定义View同样遵循着某些规则,这篇博客我就从这个规则入手,先实现View,在涉及原理。
2020-12-11 18:03:58 2514 2
我自己的产品分析方法论
2023-01-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人