Android 正弦和贝塞尔曲线简单应用

本文主要就介绍如何使用正余弦或者贝塞尔曲线实现一个类似水波纹加载的动效。如果有看前面的文章,可以知道现在使用贝塞尔曲线相对比较容易,因为Android的Path中就有贝塞尔曲线的API,可以直接使用。但是,正余弦在Path中确实没有什么API供开发者直接使用,那么只能另寻其它方式了。 先上图,俗话说一图顶千言。 正弦曲线 在Path的API中有lineTo(x,y)方法,使用Math [...]

Android 浅谈贝塞尔曲线

本文也是自定义控件相关的内容,主要介绍贝塞尔曲线在Android开发中的应用。 首先通过理论介绍一下贝塞尔曲线的基本实现原理,然后借助于图片演示了一下贝塞尔曲线的实现方式。文中更多介绍的是关于二阶和三阶贝塞尔曲线的内容,如果想了解更高阶贝塞尔曲线内容,可以上网查看了解更多。 Android中提供了二阶和三阶贝塞尔曲线的API,借助于这些API可以实现许多炫酷的交互,比如加入购物车、水波纹、点赞 [...]

Android Path和PathMeasure

本文继续介绍自定义控件的相关内容,Path在一些高级特效中使用相当广泛,如一些加载特效、刮刮卡和前段时间的比较火的撕衣应用。 Path一般结合xfermode或者贝塞尔曲线做一些很炫的交互效果,有关贝塞尔曲线的内容这里暂不涉及,本文主要介绍Path的一些简单基础用法,相关的类还包括PathMeasure,需要掌握PathMeasure的两个方法:getLength()、getSegment。 [...]

Android Canvas用法之save、restore和saveLayer

本文跟上一篇博文类似,也是介绍自定义控件的相关内容,主要是onDraw()中常使用的方法。 主要涉及三个方法:save()、restore()、saveLayer(),当然了也会涉及到其它的方法,如restoreToCout()、setXfermode()。 重点需要掌握如何使用save()、restore()、saveLayer(),文中会通过示例代码以及运行后截图来对比展示,如果使用sav [...]

Android画笔Paint和FontMetrics

有关自定义控件的许多内容,一直都想抽时间梳理一下,当然了梳理的内容不会很深,都是一些比较常用的类或者方法,主要是为了后续用到时方便查阅与参考。 本文主要整理的是Paint的一些基本使用方法和技巧,其中涉及到文字绘制的,涉及绘制文字时需要知道基线的坐标与View的坐标参考点是不同的,需要知道坐标之间的转换方式。另外需要知道有哪些方式可以测量已经绘制的文字所占的宽度,包括可以精确测量的方式,也有相对 [...]

Java设计模式-外观模式

外观模式又称为门面模式(Facade模式),在23种设计模式中被称为结构型模式。结构型模式分为结构型类模式和结构型对象模式,外观模式属于结构型对象模式。结构型类模式是采用继承机制来组合接口和实现,而结构型对象模式则是描述了如何对一些对象进行组合。在介绍适配器模式时,适配器模式分为类适配器和对象适配器,恰好是典型的两种结构型模式的体现。 外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外 [...]

浅谈ContentProvider

ContentProvider即内容提供者,它是Android系统中提供的专门用于不同应用间进行数据共享的组件。ContentProvider提供了一套标准的接口来获取及操作数据,准许开发者把自己的应用数据根据需求开放给其他应用进行增删改查,而无须担心直接开放数据库权限而带来的安全问题。系统预置了许多ContentProvider用于获取用户数据,比如消息、联系人、日程表等。 在以前介绍其它组件 [...]

浅谈MVP架构模式

MVP即Model-View-Presenter,它是在经典的MVC(Model-View-Controller)架构基础上延伸出来的一种架构模式。Google官方也给出了一个简单的MVP示例。 MVC与MVP MVP和MVC有很多共性,Model提供数据,View负责显示,Controller/Presenter负责逻辑的处理。 模型关系图如下: Model:定义数据的格式,这一点与 [...]

Git使用教程七

本文主要介绍4个Git命令,它们分别是stash、tag、rm和mv命令。stash用于暂存或者恢复当前工作目录的内容。tag用于创建,列出,删除或验证使用GPG签名的标签。rm用于删除Git版本库中跟踪的文件或者目录。mv命令用于移动或重命名文件,目录或符号链接。 git stash git stash命令用于将更改储藏在脏工作目录中。 git stash list [<option [...]

Git使用教程六

本文主要介绍两个git命令,它们分别是git rebase和git cherry-pick。git rebase可以改变分支的根基,假设有两个分支沿着不同的方向操作,使用rebase命令,可以将两条沿着不同方向的分支合并为一个分支,这两个分支路径会被更改为一条路径。不仅如此,git rebase还可以更改合并服务器上的提交记录,可以将已经提交到服务器的多条历史提交合并为一个提交记录。git mer [...]

Git使用教程五

本文已经是Git使用教程的第5篇文章了,接下来应该还会再介绍2篇,这样Git相关的内容暂时告一段落了,相信只要熟练使用这7篇文章涉及到的命令,已经可以满足日常开发的需要了。当然了关于Git的使用还有许多内容,包括许多的底层命令和高级命令,还有结合gerrit搭建等等,这些内容后续有时间会再整理一些。 在本文中,重点介绍Git中操作远程仓库3个相关命令,它们分别是fetch、pull和push。在 [...]

Git使用教程四

本文重点介绍Git分支协作的相关命令,Git一个很重要的特性就是允许在不同的分支上协同操作,然后再进行分支合并。分支合并依赖两个常用命令merge和rebase,在本文主要介绍merge命令的使用,需要知道如何使用merge命令进行分支合并,并且需要掌握merge出现冲突时的解决方式,包括如何回退本次merge到之前的状态。然后介绍了diff命令的使用,需要了解如何查看工作区和暂存区文件的差异,工 [...]

Git使用教程三

人生没有回头路,生命不会给谁第二次选择的机会,一瞬间的犹豫有时会完全改变一个人以后的一生。正因如此,所以人生脚下的每一步才需要倍感珍惜。 如果使用Git则不同了,Git不仅可以让你回到过去,而且还可以从过去回到那个你曾经到过的未来,简直是开挂的存在。Git的上面的能力,来自于两个命令reset和checkout,本文重点就是介绍这两个命令的使用,而且reset和checkout两个命令也是需要熟 [...]

Git使用教程二

本文继续记录Git的使用,重点介绍3个命令,它们分别是git add,git commit,git branch。针对每一个命令的使用,在文中都会借助于具体的操作示例演示一下。文中所介绍的3个命令,是非常基础也是经常使用的命令,不需要刻意去记忆,平常使用多了自然就记住了。 git add git add命令时将工作区内容添加到索引index,或者说将更改添加到暂存区stage,以准备下一次提交 [...]

Git使用教程一

Git是目前使用最广泛的一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git用于保存代码文件,保留历史纪录,可以回到过去,多端共享,团队协作。因此Git是每个程序员必须掌握的技能。 安装git后不同于java或者adb的设置,安装JDK或者Android SDK后,如果想要在命令窗口使用java或者adb命令,需要手动设置环境变量后才可以使用,但是安装Git后会 [...]
共 10 页 1 2 3 4 5 6 7 8 9 10