![](images/icon.png)
HenCoder 绘制 2 练习项目
===
### 这是什么?
这不是一个独立使用的项目,它是 [HenCoder Android 开发进阶:UI 1-2 Paint 详解](http://hencoder.com/ui-1-2) 的配套练习项目。
### 怎么用?
项目是一个可以直接运行的 Android App 项目,项目运行后,在手机上打开是这样的:
![](images/preview.png)
工程下有一个 `/practice` 目录:
![](images/project_practice.png)
你要做的是就是,在 `/practice` 下的每一个 `PracticeXxxView.java` 文件中写代码,绘制出和页面上半部分相同的效果。例如写 `PracticeLinearGradientView.java` 以绘制出用线性渐变来绘制颜色的圆形。就像这样:
![](images/preview_after.png)
> 当然,没必要做得和示例一毛一样。这是一个练习,而不是一个超级模仿秀,关键是把技能掌握。
如果做不出来,可以参考 `/sample` 目录下的代码:
![](images/project_sample.png)
练习做完,绘制第二期(Paint 详解)的内容也就掌握得差不多了。
### 关于有些方法无效
现在的 Android 默认是开启了硬件加速的,而 Canvas 和 Paint 有一些方法是不支持硬件加速的,你需要把它手动关闭才行。硬件加速的支持情况和手动关闭硬件加速的方法你可以看一下这个 Android 的[官方文档](https://developer.android.com/guide/topics/graphics/hardware-accel.html)。
以后我会专门用一节来讲硬件加速和图像的离屏缓冲(off-screen buffer),现在先不多说了。
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
自定义View的练习---用于周五使用 (114个子文件)
gradlew.bat 2KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.gitignore 118B
.gitignore 7B
build.gradle 1KB
build.gradle 498B
settings.gradle 15B
gradlew 5KB
gradle-wrapper.jar 52KB
MainActivity.java 4KB
Sample12PathEffectView.java 3KB
Sample15FillPathView.java 2KB
Practice15FillPathView.java 2KB
Sample08XfermodeView.java 2KB
Practice12PathEffectView.java 2KB
Sample14MaskFilterView.java 2KB
Practice08XfermodeView.java 2KB
PageFragment.java 2KB
Sample05ComposeShaderView.java 2KB
Practice14MaskFilterView.java 2KB
Sample06LightingColorFilterView.java 1KB
Practice10StrokeJoinView.java 1KB
Sample07ColorMatrixColorFilterView.java 1KB
Sample10StrokeJoinView.java 1KB
Practice06LightingColorFilterView.java 1KB
Sample11StrokeMiterView.java 1KB
Practice11StrokeMiterView.java 1KB
Sample09StrokeCapView.java 1KB
Sample04BitmapShaderView.java 1KB
Practice07ColorMatrixColorFilterView.java 1KB
Practice16TextPathView.java 1KB
Sample16TextPathView.java 1KB
Practice05ComposeShaderView.java 1KB
Sample02RadialGradientView.java 1KB
Practice09StrokeCapView.java 1KB
Sample01LinearGradientView.java 1KB
Practice01LinearGradientView.java 1KB
Sample03SweepGradientView.java 1KB
Practice02RadialGradientView.java 1KB
Practice03SweepGradientView.java 1KB
Sample13ShadowLayerView.java 1000B
Practice04BitmapShaderView.java 992B
Practice13ShadowLayerView.java 982B
ExampleInstrumentedTest.java 772B
ExampleUnitTest.java 412B
what_the_fuck.jpg 58KB
batman.jpg 33KB
README.md 2KB
preview.png 340KB
preview_after.png 316KB
project_sample.png 89KB
project_practice.png 60KB
batman_logo.png 18KB
ic_launcher.png 7KB
ic_launcher.png 5KB
icon.png 3KB
ic_launcher.png 3KB
proguard-rules.pro 932B
gradle.properties 730B
gradle-wrapper.properties 230B
profile-2022-06-14-23-01-35-262.rawproto 920B
markdown-navigator.xml 4KB
misc.xml 3KB
fragment_page.xml 1KB
strings.xml 1KB
activity_main.xml 944B
AndroidManifest.xml 708B
compiler.xml 656B
gradle.xml 626B
runConfigurations.xml 564B
styles.xml 542B
modules.xml 379B
practice_linear_gradient.xml 365B
practice_lighting_color_filter.xml 340B
practice_sweep_gradient.xml 328B
practice_stroke_cap.xml 320B
sample_stroke_miter.xml 285B
practice_color_matrix_color_filter.xml 262B
sample_color_mask_color_filter.xml 259B
sample_lighting_color_filter.xml 256B
practice_compose_shader.xml 254B
practice_radial_gradient.xml 254B
practice_stroke_miter.xml 252B
practice_bitmap_shader.xml 252B
practice_shadow_layer.xml 252B
practice_path_effect.xml 251B
practice_stroke_join.xml 251B
sample_radial_gradient.xml 251B
sample_linear_gradient.xml 251B
practice_mask_filter.xml 250B
sample_sweep_gradient.xml 250B
sample_compose_shader.xml 250B
sample_shadow_layer.xml 248B
practice_fill_path.xml 248B
共 114 条
- 1
- 2
最爱吃豆腐
- 粉丝: 12
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240430_144340_com.ss.android.ugc.live.jpg
- 回到山沟沟.mp3
- 111111111111111111
- 基于matlab实现关于语音信号声源定位DOA估计所用的一些传统算法.rar
- 基于ultralytics-yolov8, 将其检测/分类/分割/姿态等任务移植到rk3588上
- Screenshot_2024-04-30-21-47-24-26.jpg
- 基于matlab实现波束形成,包括线阵、平面阵和圆阵
- Python自动生成excel周期报告源码
- 基于matlab实现DOA 估计和自适应波束形成.rar
- 一个基于yolov8的火灾检测部署
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0