随笔分类 - Android
摘要:1、适配条件 target在26以下,不用做适配。 如果设置target=26及以上,在8.0不做适配,就会显示成一个圆圈包围着logo,不好看。 2、Android 8.0应用图标适配原理: 应用图标分为2层:前景层(logo层)和背景层(只能定义颜色和纹理,不能定义形状) 最后8.0系统会给它加
阅读全文
摘要:在.gradle目录中,修改init.gradle文件,修改其中的maven地址。 在.m2目录中,修改settings.xml文件,修改其中的maven地址。 以下是init.gradle文件: allprojects { repositories { def REPOSITORY_URL = '
阅读全文
摘要:1、下载jenkins war包 从Jenkins官方网站下载最新的war包,然后在war的目录下打开cmd,执行命令: java jar jenkins.war 。 看到以下信息,就表示jenkins安装成功了。 2、启动jenkins 第一次启动Jenkins时,出于安全考虑,Jenkins会自
阅读全文
摘要:基于Android Studio3.0 提供demo:https://github.com/hacjy/GradleConfigDemo 1、依赖库的统一管理配置 创建config.gradle 关键字ext 如何使用 :首先, 在工程的build.gradle中导入该配置文件:apply from
阅读全文
摘要:在导入新的项目时,可能会出现Error:Unable to tunnel through proxy. Proxy returns "HTTP/1.1 400 Bad Request",这个问题主要是因为 gradle版本与studio所用的版本不一致 导致的,所以我们只要改下gradle的配置路径
阅读全文
摘要:LruCache原理: 维护一个缓存对象列表,按照访问顺序进行对象排列,就是将一直没有访问的对象放到队尾,即将淘汰。而最近访问的对象放在队头,最后淘汰。而这个队列主要是通过LinkedHashMap实现。 LinkedHashMap:(默认为插入排序,即输入与输出顺序一致) 继承于HashMap,使
阅读全文
摘要:. 布局优化: 1、使用层级少的布局,LinearLayout和FrameLayout优于RelativeLayout;2、单一布局实现不了时,会进行嵌套布局,一般RelativeLayout优于嵌套布局;3、采用include复用布局,merge减少布局的层级,viewstub按需加载。 . 绘制
阅读全文
摘要:二、Android ClassLoader Android ClassLoader加载的是dex文件,而不是jar或class文件。 2种类型:系统和自定义 系统加载器有:BootClassLoader(BCL)、PathClassLoader(PCL)、DexClassLoader(DCL) 1、
阅读全文
摘要:一、Java ClassLoader ClassLoader:类加载器,主要是用来查找和加载Class文件到JVM。 包括2种类型:系统和自定义。 系统类加载器:Bootstrap CL(BCL),Extensions CL(ECL),App CL(ACL) BCL:c/c++实现,java代码不能
阅读全文
摘要:Google在15年的发布大会上提出了DataBinding数据绑定框架,解决了Android编程的一大痛点。官方原生支持MVVM模型让我们可以在不改变既有的框架上使用上新的特性。它可以使我们的代码更加简洁,不必在页面中写太多的findViewById,省时省力。今天我们也体验了一把,记录下遇到的问
阅读全文
摘要:介绍 前段时间,我看到了一篇关于可滑动开关Switch组件的文章,效果图如下: 思路也挺简单的:这个控件主要由田径场式背景和滑块组成。他将田径场式背景分为3部分,最左边的半圆,中间的两条直线部分和最右边的半圆。假设线的宽度为lx,半圆的半径则为lx的一半,通过监听touch事件,不停的绘制两个半圆和
阅读全文
摘要:原来查看数据库内容,我们一般都是将数据库文件从手机导出,再用专门的软件打开查看,比较繁琐。最近发现了一个比较方便的方法:使用工具stetho。 使用方式 在gradle中配置dependencies: 自定义一个MyApplication继承Application,在onCreate中初始化stet
阅读全文
摘要:1、绚丽的loading动效的实现 2、Android自定义View:进度条+冒泡文本 3、Android雷达图(蜘蛛网图) 4、Android文本闪烁 5、Android绘制圆形进度条 6、重写TextView,实现圆形背景,文本居中显示 7、自定义view-滑动开关
阅读全文
摘要:首先我们还是来看看关于这个方法的说明: /** * Set or clear the xfermode object. - 设置或清除xfermode对象; * Pass null to clear any previous xfermode. - 传递null以清除任何以前的xfermode。 *
阅读全文
摘要:/** * 获取文本的高度 * @param text * @return */ private int getTextHeight(String text){ Rect bounds = new Rect(); mFanPaint.getTextBounds(text,0,text.length(),bounds)...
阅读全文
摘要:最近看到有个gif动画效果挺不错的,可以拿来当项目的LoadingView,所以就花点时间做了下。先来看下效果图: 分析 从效果上看,我们可以将其拆分成以下几部分: (1)底部框:带有黄色边框的圆角矩形和右边的圆形,为了方便,整个底部框切了,不需要我们去绘制圆角矩形和圆形了; (2)进度框:带有进度
阅读全文
摘要:简介 最近看到有这样的需求:显示进度条,描述文本显示在进度条的刻度上面。正好练练手,回顾下自定义View知识。 分析 通过上图,我们可以看到,该UI显示了文本,而文本显示在一张图片中,有一个默认的进度条和根据实际进度显示的进度条。我们可以将其拆分成4个组成部分: (1)图片,作为文本的背景图,这个背
阅读全文
摘要:简介 有时我们会在广告LED中看到文本闪烁的效果,那它到底是怎么实现的呢? 效果图: 设计思路 我们都知道Android中的LinearGradient可以实现颜色渐变的效果,那么我们可以通过平移渐变效果来实现文本闪烁效果。 代码 分析 想要达到这样的效果,是利用Paint中的渲染器Shader,为
阅读全文
摘要:canvas绘制:设置背景色为透明色,但是显示出来的还是黑色。 解决办法:去掉硬件加速
阅读全文
摘要:简介 最近因为项目的需要,需要实现雷达图来展示各科目的对题率。 雷达图的绘制不算复杂,只要按照一定流程来绘制就可以了,其中使用的最多的是path路径类,使用这个类便于我们绘制出多边形等效果。 效果图如下: 使用方式 使用方式很简单,直接在布局文件里面使用这个控件,记得设置一个合适的大小就可以。 当然
阅读全文

浙公网安备 33010602011771号