- 博客(20)
- 收藏
- 关注
原创 Android绘图篇(六)——setXfermode
上一篇:Android绘图篇(五)——setShader 设置着色器上篇总结了Paint中的setShader方法,这篇来总结下setXfermode方法。setXfermode需要传入一个Xfermode对象。来看下这个类的介绍:它是一种图像混合模式,当然只知道这个,并不能理解它是干嘛的,也不知道怎么用,不过没关系,通过一个个例子就能逐渐体会它的奥妙。至于使用的时候,只需要传入其子类就行了...
2019-04-12 19:02:06
1575
2
原创 Android绘图篇(五)——setShader 设置着色器
上一篇总结了下Paint的绝大部分方法,还有两个非常重量级的方法,setShader和setXfermode,废话不多说,先来总结下setShader的使用,setXfermode比较复杂,下一篇再总结。setShader,顾名思义,设置着色器,我们知道在Canvas中,我们调用drawXXX可以绘制出各种各样的图形,如圆形、矩形、扇形等等,而Shader是给Paint设置的属性,决定paint...
2019-04-10 21:50:25
3387
原创 Android绘图篇(四)——Paint详解
前言:前几篇稍微总结了下canvas和Path的内容,Paint都是顺带而过,今天准备来个Paint大详解,把Paint所有的api都过一遍,关于Paint,我准备用两到三篇博客来写,这一篇先写写之前没讲到的api,后面会重点介绍下Paint中setColorFilter、setShader、setXfermode这几个方法,因为这几个方法涉及到的知识挺多的,一时半会讲不完。**好了,我们主要总...
2019-04-04 20:00:33
2364
原创 TextView textIsSelectable属性
在需要用到TextView的复制的功能的时候,我们只需要在xml文件中加一行代码就行:<TextView android:id="@+id/item_alertDetailInfo_tvSolveTime" android:layout_width="match_parent" android:layout_heigh...
2019-04-03 16:08:22
1205
原创 使用命令行创建Android Studio项目
前言:前段时间,公司要开发一个移动开发平台,有一个功能是在网页端创建Android项目,填入项目名和包名,要能够在后台生成一个Android Studio目录的工程,然后提供给用户。接到这个需求的时候我是一脸懵逼的,开发者要这玩意有啥用啊,我用Android Studio创建工程不是更方便?然而领导说了要做,那就做呗。于是有了以下思路:在后台放一个标准的Android Studio工程,通过前台...
2019-03-17 23:49:55
3171
11
原创 Android绘图篇(一)——Canvans基本操作
前言:Canvans,是Android绘图机制的核心api,可以绘制出矩形、圆形、贝塞尔曲线、路径、文字等等各种图形,在Android的自定义View中需要大量用到这个类。现实生活中,我们在纸上画出一幅画,需要三样东西:画笔、画板、纸张。而Canvans就相当于画板,至于为什么不是纸张,咱们后面再说~PaintPaint,画笔,绘图三要素之一。常用api如下: //初始化画笔...
2019-03-14 21:27:47
4675
2
原创 Android 打包流程之aapt打包资源文件
Android应用最终是以apk的形式放在手机上安装并运行的,而负责将资源文件和代码进行打包的工具就叫appt,全称Android Asset Packaging Tool,翻译过来就是Android资源打包工具,是Android打包流程中不可或缺的一环。虽然build-tools中都会有一个aapt.exe负责打包apk,但底层还是通过执行aapt命令的方式来进行操作,所以这里需要了解一下aap...
2019-02-27 11:33:44
7304
4
原创 Android打包流程之资源管理
前言:前天某个公众号突然给我推了一篇文章,里面给出了Android打包编译知识的思维导图,于是觉得作为Android开发者有必要了解一下这个流程。即使现在的知识储备不够,但是人嘛,总是在学习中不断成长的。一步一步,不会的努力学会,总有一天可以融会贯通。关于Android打包和编译这一块,网上有许多优秀的博客,大家可以自行寻找,比较有名的是罗升阳大神写的一篇博客:Android应用程序资源的编译和打...
2019-02-21 11:04:33
2438
原创 细说Android的内部存储和外部存储
数据存储,是我们在Android开发中经常遇到的场景,数据的存储方式也有多种方式,例如文件存储、数据库存储、网路存储等等。无论哪种存储,都会涉及到手机的存储空间,而其中比较绕人的就是Android手机的内部存储和外部存储了,这两天花了点时间总结了一番,这里写成博客权当记录。内部存储概念:注意内部存储不是内存,它是手机中的一块存储区域,是系统本身和系统应用程序主要的数据存储所在地。手机的内部存储...
2019-02-19 21:32:06
3100
1
原创 这可能是东半球最详细的Linux下搭建Jenkins服务器实现自动打包的教程(下)
这可能是东半球最详细的Linux下搭建Jenkins服务器实现自动打包的教程(下)上一篇我们从零开始,在Linux环境下配置了Jenkins的Android构建环境,但也仅仅是搭建环境,至于参数化构建、输出apk、定时构建、邮件发送等功能因为篇幅的原因没有介绍,本篇博客就来介绍介绍Jenkins这些常用的功能。如果你对jenkins还尚无所知,请见上一篇博客:这可能是东半球最详细的Linux下...
2019-02-19 00:36:11
427
原创 Android组件化方案
前言:再说组件化之前,我们先来看一个app的界面:这是电商平台苏宁易购app的首页。红色圈起来的部分,都是苏宁易购旗下的子业务,都是由不同的团队分别开发,毕竟业务不同,一个团队不可能开发这么多的业务。这就会有一个问题,各个团队之间如何协同作战呢?我们传统的做法是在项目中建立不同业务的文件夹(假设都是用原生进行开发),相关业务的代码都放在各自的文件夹内,然后各自团队开发各自的功能。但这样做有一个...
2019-02-13 00:01:09
388
原创 Android Architecture Components系列之Room数据持久化方案
上一篇说完了Android组件架构中的ViewModel和LiveData,地址:ViewModel和LiveData,两者配合使用确实比传统的app架构更加优雅,更加职责分离。而除了这种app架构,google还推出了一个关于数据持久化方案的组件Room。何为Room?Room是一套基于Sqlite数据库封装的一套框架组件,旨在简化Android中对数据库的操作。我们都知道Android原生...
2019-01-26 00:18:07
629
原创 Android Architecture Components系列之LiveData&ViewModel
Android Architecture Components系列之LiveData&amp;amp;amp;ViewModel上一篇咱们聊到了Android Architecture Components系列之Lifecicle,优雅解决了Activity生命周期方法的分离。不过也仅此而已,它并不是一种app架构方案,而我们今天的主角LiveData和ViewModel则是一种官方的、稳定的app架构方案,算...
2019-01-22 20:27:39
304
原创 Android Architecture Components系列之Lifecycle
Android Architecture Components之LifeCycle简介:去年的Google IO大会,除了敲定kotlin为Android的官方开发语言,还退出了Android Architecture Components组件,旨在帮助开发者构建更好的构建app。从前有人问google:有没有一种官方通用而且稳定的app架构方案,开发者只需要遵循这个方案就可以构建出稳定而且易开...
2019-01-17 00:00:31
311
原创 这可能是东半球最详细的Linux下搭建Jenkins服务器实现自动打包的教程(上)
带你从零开始在Linux下搭建Jenkins服务器,实现Android项目的自动打包前言:作为开发者,我们都遇到过这样一个问题,项目在测试期的时候,测试总会找我们打各个环境的包,什么生产包、prd包、pre包,每次都是我们打完包再发给测试。可是打包是要时间的啊,项目小还好,项目大的话,打个包也是需要很长的时间,如果公司给你配置的电脑再垃圾一点,好吧,打包的时候你就啥都不用干了,大眼瞪小眼,就干等...
2019-01-07 10:18:53
1727
8
原创 java中注解的使用
java中注解的使用最近在学习依赖注入框架Dagger2,里面用到了许多注解,之前很少用到注解,所以觉得上手难度有点大,所以决定先了解下java中的注解机制再去学习,这里总结下java中注解的使用,就当留个笔记了。注解(Annotation),又叫元数据。是jdk1.5及其之后引入的一套机制。那这玩意儿到底有啥用呢?我们随意建一个类,代码如下:public class Student { ...
2018-12-28 18:14:00
747
原创 RxJava+Retrofit+RxLifecycle实现mvp+网络请求。
RxJava2+Retrofit2+RxLifecycle实现mvp+网络请求。第一次写博客,写的不好请各位看官见谅,如有错误,欢迎批评指正~简介:RxJava和Retrofit可谓目前Android最火的两大框架了。本文只对两者的使用做一个简单的实例,侧重于两者结合对网络请求的封装,各自高深的用法和源码还请各位看官度娘之~。代码如下:select * from baidu where ...
2018-12-27 00:06:13
2237
8
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人