lineargradient使用matrix的计算方式

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

LinearGradient 是一种在 Android 中常用的渐变效果,常用于背景色、画笔等效果。

而 Matrix 是 Android 中用于变换图像的一个类,比如缩放、旋转、平移等。

使用 LinearGradient 配合 Matrix 可以实现文字闪动效果。

首先,需要在 onSizeChanged 方法中设置渐变。

例如:
```java
mLinearGradient = new LinearGradient(0, 0, mViewWidth, 0, new int[]{Color.BLUE, 0xffffffff, Color.BLUE}, null, Shader.TileMode.CLAMP);
```
然后,在 onDraw() 方法中,调用如下代码:
```java
if (mGradientMatrix != null) {
// 从0开始,每次递增 mViewWidth / 5,即从最左侧开始每次向前平移 1/5 个长度
mTransLate += (mViewWidth / 5);
if (mTransLate > mViewWidth) { // 渐变平移走到头,需要重新从头开始
mTransLate = -mViewWidth;
}
}
```
这将会让文字随着 LinearGradient 的渐变移动,产生一种闪动的效果。

需要注意的是,这只是一个简单的示例,实际使用时可能需要根据具体需求进行更复杂的计算和变换。

相关文档
最新文档