FengZH的博客

  • 首页

  • 标签

  • 分类

  • 归档

安卓高斯模糊的实现

发表于 2019-11-14 | 分类于 Android

前言

在 Android 中,实现高斯模糊效果的主要方式有:

  • Java:FastBlur.java,由于在 Java 层做处理,效率较低。
  • Android:RenderScript,原生 API,在 C/C++ 层做处理,效率较高。

对比后不难发现 RenderScript 是更好的选择,它是原生 API,使用简单,同时也有较高的效率。还可以和 Glide 搭配使用。

阅读全文 »

FlowLayout(流式布局)的实现

发表于 2019-11-11 | 分类于 Android

前言

最近在做的项目决定用流式布局来展示历史记录,刚好自己也想学习自定义 ViewGroup,所以就参考了其他的一些文章,写了一个 FlowLayout(流式布局),效果如下:

阅读全文 »

马拉车(Manacher)算法

发表于 2019-11-06 | 分类于 算法

简介

了解马拉车算法的作用前,先要知道回文字符串的概念。回文字符串是指无论正着读还是反着读,结果都是一样的字符串。例如 aba、abba 都是回文字符串。

马拉车算法就是用来求一个字符串中的最长回文子串。例如 LeetCode 的第五题“最长回文子串”。

阅读全文 »

仿掌阅实现 TabLayout 切换时的字体和 Indicator 动画

发表于 2019-11-04 | 分类于 Android

前言

最近在做的一个小说阅读 APP,打算模仿掌阅实现 TabLayout 切换时的动画效果。

阅读全文 »

TabLayout 之改变 Indicator 的宽度

发表于 2019-11-01 | 更新于 2019-11-02 | 分类于 Android

前言

默认情况下,TabLayout 中 Indicator 的宽度和该 Tab 的宽度相等。但是有时候我们需要自定义 Indicator 的宽度,所以本文将介绍改变 Indicator 的宽度的几种方法。

阅读全文 »

手把手教你画 UML 类图

发表于 2019-10-31 | 分类于 其他

类(接口)的表示

类的表示

在 UML 类图中,一个矩形代表一个类,如图:

阅读全文 »

FragmentTransaction 的 replace, add, hide, show 的使用和区别

发表于 2019-10-20 | 分类于 Android

引入

现在 APP 的主页面大多采用“单 Activity + 多 Fragment”的形式。多 Fragment 的使用需要解决两个问题:

  1. Fragment 怎么依附在 Activity 上
  2. Fragment 间的切换

对于第一个问题,可以利用 FrameLayout 来解决,FrameLayout 可以作为承载 Fragment 的容器,又可以成为 Activity 布局的一部分,这样就可以把 Fragment 和 Activity 连接起来。

重点是第二个问题,如果进行 Fragment 的切换。Fragment 的切换需要用到 FragmentTransaction。接下来就介绍一下 FragmentTransaction 的 创建以及它的 replace, add, hide, show 等方法,并学会如何使用这些方法完成 Fragment 的切换。

阅读全文 »

揭露动画(RevealAnimator)的基本使用

发表于 2019-10-19 | 分类于 Android

前言

揭露动画是 Android 5.0 的新特性,使用该动画后,在显示或隐藏视图的时候能够给用户提供视觉连续型。

阅读全文 »

并查集

发表于 2019-10-15 | 分类于 数据结构

简介

并查集(Union-Find)是一种树形的数据结构,用于处理一些不相交集合的合并及查询问题。从它的名字“并查”可以知道它包含了两个操作:合并和查找。

合并:将两个不相交集合合并成同一个集合。

查找:确定元素属于哪一个集合。一般来说,一个集合用一个元素作为代表(树的根),当前元素通过不断地向上查找,最终找到当前集合的代表(树的根),也就可以确定所在集合了。

阅读全文 »

Canvas 和 Paint 的基本用法

发表于 2019-09-29 | 分类于 Android

前言

在自定义 View 中,Canvas 和 Paint 配合使用,可以绘制各种 View。其中,Canvas 是画布的意思,Paint 是画笔的意思。本文主要介绍这两个类的一些基本 API,以及它们之间的配合使用。

阅读全文 »
123…9
FengZH

FengZH

阳光总在风雨后!坚持就是胜利!
82 日志
6 分类
33 标签
GitHub E-Mail
© 2019 – 2020 FengZH
|
0%