Compare commits

...

10 Commits

Author SHA1 Message Date
sloop
c6a9c902b3 Update 2016-10-23 23:34:08 +08:00
GcsSloop
8caccc5aac Update 2016-10-22 23:44:35 +08:00
GcsSloop
8cb6e5d816 Update 2016-10-20 00:39:14 +08:00
GcsSloop
e6de20672b Update 2016-10-19 04:10:01 +08:00
sloop
5f270c2f75 Update 2016-10-19 00:14:57 +08:00
GcsSloop
2321fcac24 Update 2016-10-18 17:02:49 +08:00
sloop
9623462eda Update 2016-10-17 18:25:39 +08:00
sloop
d873e1f630 Update 2016-10-16 17:38:12 +08:00
GcsSloop
383ae9e0cc Update 2016-10-16 17:31:44 +08:00
sloop
7485212306 Update 2016-10-16 06:15:53 +08:00
9 changed files with 91 additions and 17 deletions

View File

@@ -0,0 +1,65 @@
自从接触了 Markdown 之后,就一直用 Markdown 作为自己的主要书写工具,不论是平时做一些简单的纪录,还是用来写博客,写文档都是非常方便。本文就是用 Markdown 进行书写的。
> 我最早因为 GitHub 而了解到 Markdown当是支持 Markdown 的平台并不多,现在发现很多平台都已经开始支持 Markdown了不论是老牌的 CSDN 还是比较新的 简书、掘金、DiyCode 等都支持使用Markdown进行写作借此趋势赶紧向还不了解 Markdown 的魔法师强势安利一波。
>
> 如果你已经开始使用 Markdown了那么本文作用对你可以能并不大请看后续文章。
## 什么是 Markdown ?
**Markdown 是一种轻量级标记语言创始人为約翰·格魯伯John Gruber。 它允许人们“使用易读易写的纯文本格式编写文档然后转换成有效的XHTML(或者HTML)文档”。**
相比于 HTML (~~How To Make Love~~ 大雾) **Markdown 更加精简,更加注重内容,其主要宗旨是「易读易写」** 一般 Markdown 最终都是要转换为 HTML 的,可用于书写博客或者网页,但借助某些工具,可以讲 Markdown 转换为 pdfwordLatex 等其他常见的文件格式。
## 为什么选择 Markdown ?
**选择 Markdown 但理由只有一个:方便,节省时间!**
至于为什么这样说,请看下面内容:
* **语法简洁**,没有任何编程基础的人十几分钟语言即可入门。
* **注重内容**,专注于内容编写,不再因为格式拍版而苦恼 (word格式刷工具哭晕在厕所)。
* **易阅读性**,即便是没有经过转换的 Markdown 文件,大部分文字内容仍可阅读。
* **易编辑性**,任何文本编辑器都能编辑 Markdown 文件。
* **跨平台性**,任何平台均能打开 Markdown 文件,由于是纯文本文件,不存在格式兼容的问题。
* **导出方便**,支持导出为 HTMLPDFWord(.docx)LaTex 等常见格式(需要工具支持)。
> 在 Windows 上编写的文档,非常方便的就能在 Mac 上继续编辑,方便数据迁移,降低沟通成本。
## Markdown 存在的问题
前面吹嘘了 Markdown 的那么多优点,下面就说一下其中的不足:
* **图片问题**,很多人都觉得 Markdown 文件插入图片麻烦,还要自己上传找链接。
* **语法兼容**,基础语法是兼容的,但不同工具(平台)的扩展语法不兼容(由于没有统一标准)。
* **细节控制**Markdown只提供最基础的格式其显示样式主要由CSS控制很难针对性的控制部分内容。
> 以上应该是 Markdown 最常见的一些麻烦,不过不必担心,**后续文章会教大家来如何解决这些问题,取其精华,去其糟粕,让 Markdown 运用得心应手**。
## Markdown 编辑器推荐
俗话说,工欲善其事,必先利其器,虽然 Markdown 用任何文本编辑器都能打开编辑,但仍需要专业工具进行转化,常见 Markdown 编辑器我基本上都尝试用过,在此简单推荐几种,大家找适合自己的就行。
**仅推荐本地编辑器,在线编辑器根据需要自己选择,很多平台都已经支持直接用 Markdown 进行编辑了。**
| 编辑器 | 支持平台 | 支持导出格式 |
| ---------------------------------------- | --------------------------- | ---------------------------------------- |
| [**Typora**](http://www.typora.io/) <br/> 正在开发, 界面简洁, 对 HTML 语法支持较弱, 支持导出文件类型较多。 | Mac、<br> Windows、<br> Linux | HTML、 <br>Word(.docx)、 <br>PDF、 <br>LaTex 等 |
| [**EME**](https://eme.moe/) <br/> 正在开发, 界面简洁,对 HTML 语法支持友好,支持导出文件类型较少。 | Mac、 <br>Windows、 <br>Linux | 仅 PDF |
| [**Mou**](http://25.io/mou/) <br/> 停止开发, 界面简洁, 对 HTML 语法支持友好, 但支持导出文件类型较少。 | Mac | HTML、 <br>PDF |
| [**Sublime Text**](http://www.sublimetext.com/3) <br/> 神兵利器,需要安装插件才能使用, 相对比较麻烦, 适合高级魔法师。 | Mac、 <br>Windows、 <br>Linux | 多种格式(插件) |
| [**Atom**](https://atom.io/) <br/> 神兵利器, 支持多种常见的编程语言, 如果仅仅是为了写 Markdown 不推荐安装。 | Mac、 <br>Windows、 <br>Linux | HTML、 <br>PDF(插件) |
## 快速入门
前面是为了帮助还不了解Markdown

View File

@@ -476,12 +476,12 @@ public class PieView extends View {
// 设置数据
public void setData(ArrayList<PieData> mData) {
this.mData = mData;
initDate(mData);
initData(mData);
invalidate(); // 刷新
}
// 初始化数据
private void initDate(ArrayList<PieData> mData) {
private void initData(ArrayList<PieData> mData) {
if (null == mData || mData.size() == 0) // 数据有问题 直接返回
return;

View File

@@ -213,9 +213,9 @@ close方法用于连接当前最后一个点和最初的一个点(如果两个
```
<img src="http://ww4.sinaimg.cn/large/005Xtdi2jw1f1axmfeojzj30u01hcwfi.jpg" width = "270" height = "480"/>
很明显两个lineTo分别代表第1和第2条线而close在此处的作用就算连接了B(200,0)点和圆的O之间的第3条线使之形成一个封闭的图形。
很明显两个lineTo分别代表第1和第2条线而close在此处的作用就算连接了B(200,0)点和原点O之间的第3条线使之形成一个封闭的图形。
**注意close的作用是封闭路径与当前最后一个点和第一个点并不等价。如果连接了最后一个点和第一个点仍然无法形成封闭图形则close什么 也不做。**
**注意close的作用是封闭路径连接当前最后一个点和第一个点并不等价。如果连接了最后一个点和第一个点仍然无法形成封闭图形则close什么 也不做。**
### 第2组: addXxx与arcTo

View File

@@ -282,7 +282,7 @@ Path的布尔运算有五种逻辑如下:
代码:
``` java
``` java
int x = 80;
int r = 100;

View File

@@ -64,7 +64,7 @@ A: **如果不去看源码,想一下让自己设计会怎样?**
* 单击事件(onClickListener) 需要两个两个事件(ACTION_DOWN 和 ACTION_UP )才能触发如果先分配给onClick判断等它判断完用户手指已经离开屏幕黄花菜都凉了定然造成 View 无法响应其他事件,应该最后调用。(最后)
* 长按事件(onLongClickListener) 同理也是需要长时间等待才能出结果肯定不能排到前面但因为不需要ACTION_UP应该排在 onClick 前面。(onLongClickListener > onClickListener)
* 触摸事件(onTouchListener) 如果用户注册了触摸事件,说明用户要自己处理触摸事件了,这个应该排在最前面。(最前)
* View自身处理(onTouchEvent) 提供了一种默认的处理方式,如果用户已经处理好了,也就不需要了,所以应该排在 onClickListener 后面。(onClickListener > onTouchListener)
* View自身处理(onTouchEvent) 提供了一种默认的处理方式,如果用户已经处理好了,也就不需要了,所以应该排在 onTouchListener 后面。(onTouchListener > onTouchEvent)
**所以事件的调度顺序应该是 `onTouchListener > onTouchEvent > onLongClickListener > onClickListener`**

View File

@@ -20,17 +20,17 @@
由于两者进制是不同的(**角度是60进制弧度是10进制**),在合适的地方使用合适的单位来描述会更加方便。
> **例如:**
角度是60进位制遇到30°6这样的角应该转化为10进制的30.1°。但弧度就不需要,因为弧度本身就是十进制的实数。
> 角度是60进位制遇到30°6这样的角应该转化为10进制的30.1°。但弧度就不需要,因为弧度本身就是十进制的实数。
## 二.角度与弧度的定义
角度和弧度一样都是描述角的一种度量单位,下面是它们的定义:
名称 | 定义
:---:| ---
角度 | 两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。**当这段弧长正好等于圆周长的360分之一时两条射线的夹角的大小为1度.**
弧度 | 两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。**当这段弧长正好等于圆的半径时两条射线的夹角大小为1弧度.**
| 名称 | 定义 |
| :--: | ---------------------------------------- |
| 角度 | 两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。**当这段弧长正好等于圆周长的360分之一时两条射线的夹角的大小为1度.** |
| 弧度 | 两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。**当这段弧长正好等于圆的半径时两条射线的夹角大小为1弧度.** |
**如图:**
@@ -47,14 +47,16 @@ C = 2πr;
一周对应的角度为360度(角度)对应的弧度为2π弧度。
故: **180 = π弧度.**
的等价关系: **180(度) = π(弧度).**
可得:
由等价关系可得如下换算公式:
公式 | 例子
----------------------|---------------------
**弧度 = 角度xπ/180** | 2π 360 x π / 180
**角度 = 弧度x180/π** | 360 2π x 180 / π
> rad 是弧度, deg 是角度
| 公式 | 例子 |
| ----------------------- | ------------------ |
| **rad = deg x π / 180** | 2π 360 x π / 180 |
| **deg = rad x 180 / π** | 360 2π x 180 / π |
维基百科的公式:

Binary file not shown.

View File

@@ -43,6 +43,12 @@
<a href="https://github.com/GcsSloop/AndroidNote/blob/master/CustomView/Advance/%5B12%5DDispatch-TouchEvent-Theory.md" target="_blank"><img src="http://ww4.sinaimg.cn/large/005Xtdi2jw1f8c631ysrej30rs0dwn03.jpg" width=285 /></a>
</p>
*******
<p align="center">
<a href="https://github.com/GcsSloop/AndroidNote/blob/master/CustomView/Advance/%5B15%5DDispatch-TouchEvent-Source.md" target="_blank"><img src="http://ww4.sinaimg.cn/large/005Xtdi2jw1f8vfucn212j30rs0dwn04.jpg" width=285 /></a>
</p>
### 作者微博: [@GcsSloop](http://weibo.com/GcsSloop)
<a href="http://www.gcssloop.com/1970/01/about/" target="_blank"> <img src="http://ww4.sinaimg.cn/large/005Xtdi2gw1f1qn89ihu3j315o0dwwjc.jpg" width=300 height=100 /> </a>

View File

@@ -35,6 +35,7 @@
* [安卓自定义View进阶 - Matrix Camera](https://github.com/GcsSloop/AndroidNote/blob/master/CustomView/Advance/%5B11%5DMatrix_3D_Camera.md)
* [安卓自定义View进阶 - 事件分发机制原理](https://github.com/GcsSloop/AndroidNote/blob/master/CustomView/Advance/%5B12%5DDispatch-TouchEvent-Theory.md)
* [安卓自定义View进阶 - 事件分发机制详解](https://github.com/GcsSloop/AndroidNote/blob/master/CustomView/Advance/%5B15%5DDispatch-TouchEvent-Source.md)
******
## [教程类](https://github.com/GcsSloop/AndroidNote/tree/master/Course/README.md)