Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
099e7f39
D
Docs
项目概览
OpenHarmony
/
Docs
大约 1 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
099e7f39
编写于
9月 21, 2022
作者:
T
tianyu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update geshi
Signed-off-by:
N
tianyu
<
tianyu55@h-partners.com
>
上级
ca1a69bd
变更
15
展开全部
隐藏空白更改
内联
并排
Showing
15 changed file
with
414 addition
and
380 deletion
+414
-380
zh-cn/application-dev/reference/arkui-js/js-components-basic-span.md
...cation-dev/reference/arkui-js/js-components-basic-span.md
+1
-1
zh-cn/application-dev/reference/arkui-js/js-components-basic-toggle.md
...tion-dev/reference/arkui-js/js-components-basic-toggle.md
+43
-26
zh-cn/application-dev/reference/arkui-js/js-components-basic-toolbar-item.md
...ev/reference/arkui-js/js-components-basic-toolbar-item.md
+8
-8
zh-cn/application-dev/reference/arkui-js/js-components-container-swiper.md
...-dev/reference/arkui-js/js-components-container-swiper.md
+1
-1
zh-cn/application-dev/reference/arkui-ts/ts-container-row.md
zh-cn/application-dev/reference/arkui-ts/ts-container-row.md
+1
-1
zh-cn/application-dev/reference/arkui-ts/ts-gesture-settings.md
...application-dev/reference/arkui-ts/ts-gesture-settings.md
+1
-1
zh-cn/application-dev/reference/arkui-ts/ts-offscreencanvasrenderingcontext2d.md
...eference/arkui-ts/ts-offscreencanvasrenderingcontext2d.md
+209
-209
zh-cn/application-dev/reference/arkui-ts/ts-transition-animation-shared-elements.md
...rence/arkui-ts/ts-transition-animation-shared-elements.md
+1
-1
zh-cn/application-dev/ui/arkui-overview.md
zh-cn/application-dev/ui/arkui-overview.md
+1
-1
zh-cn/application-dev/ui/figures/custom-dialog-demo.gif
zh-cn/application-dev/ui/figures/custom-dialog-demo.gif
+0
-0
zh-cn/application-dev/ui/js-framework-syntax-js.md
zh-cn/application-dev/ui/js-framework-syntax-js.md
+4
-4
zh-cn/application-dev/ui/ts-component-based-customdialog.md
zh-cn/application-dev/ui/ts-component-based-customdialog.md
+2
-0
zh-cn/application-dev/ui/ui-js-components-path2d.md
zh-cn/application-dev/ui/ui-js-components-path2d.md
+140
-125
zh-cn/application-dev/ui/ui-ts-building-category-grid-layout.md
...application-dev/ui/ui-ts-building-category-grid-layout.md
+1
-1
zh-cn/application-dev/ui/ui-ts-layout-mediaquery.md
zh-cn/application-dev/ui/ui-ts-layout-mediaquery.md
+1
-1
未找到文件。
zh-cn/application-dev/reference/arkui-js/js-components-basic-span.md
浏览文件 @
099e7f39
...
...
@@ -12,7 +12,7 @@
## 子组件
支持子组件
<
span
>
。
无
## 属性
...
...
zh-cn/application-dev/reference/arkui-js/js-components-basic-toggle.md
浏览文件 @
099e7f39
...
...
@@ -81,34 +81,51 @@
```
js
// xxx.js
export
default
{
data
:
{
toggle_list
:
[
{
"
id
"
:
"
1001
"
,
"
name
"
:
"
Living room
"
,
"
checked
"
:
true
},
{
"
id
"
:
"
1002
"
,
"
name
"
:
"
Bedroom
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1003
"
,
"
name
"
:
"
Second bedroom
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1004
"
,
"
name
"
:
"
Kitchen
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1005
"
,
"
name
"
:
"
Study
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1006
"
,
"
name
"
:
"
Garden
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1007
"
,
"
name
"
:
"
Bathroom
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1008
"
,
"
name
"
:
"
Balcony
"
,
"
checked
"
:
false
},
],
toggles
:
[
"
Living room
"
,
"
Bedroom
"
,
"
Kitchen
"
,
"
Study
"
],
idx
:
""
},
allclick
(
arg
)
{
this
.
idx
=
arg
},
allchange
(
e
)
{
if
(
e
.
checked
===
true
)
{
for
(
var
i
=
0
;
i
<
this
.
toggle_list
.
length
;
i
++
)
{
if
(
this
.
toggle_list
[
i
].
id
===
this
.
idx
)
{
this
.
toggle_list
[
i
].
checked
=
true
}
else
{
this
.
toggle_list
[
i
].
checked
=
false
data
:
{
toggle_list
:
[
{
"
id
"
:
"
1001
"
,
"
name
"
:
"
Living room
"
,
"
checked
"
:
true
},
{
"
id
"
:
"
1002
"
,
"
name
"
:
"
Bedroom
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1003
"
,
"
name
"
:
"
Second bedroom
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1004
"
,
"
name
"
:
"
Kitchen
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1005
"
,
"
name
"
:
"
Study
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1006
"
,
"
name
"
:
"
Garden
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1007
"
,
"
name
"
:
"
Bathroom
"
,
"
checked
"
:
false
},
{
"
id
"
:
"
1008
"
,
"
name
"
:
"
Balcony
"
,
"
checked
"
:
false
},
],
toggles
:
[
"
Living room
"
,
"
Bedroom
"
,
"
Kitchen
"
,
"
Study
"
],
idx
:
""
},
allclick
(
arg
)
{
this
.
idx
=
arg
;
},
allchange
(
e
)
{
if
(
e
.
checked
!=
true
)
{
return
;
}
for
(
var
i
=
0
;
i
<
this
.
toggle_list
.
length
;
i
++
)
{
if
(
this
.
toggle_list
[
i
].
id
===
this
.
idx
)
{
this
.
toggle_list
[
i
].
checked
=
true
;
}
else
{
this
.
toggle_list
[
i
].
checked
=
false
;
}
}
}
}
}
}
```
...
...
zh-cn/application-dev/reference/arkui-js/js-components-basic-toolbar-item.md
浏览文件 @
099e7f39
...
...
@@ -3,7 +3,7 @@
> **说明:**
> 从API version 5开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
工具栏
子组件。作为工具栏组件的子组件,用于展示工具栏上的一个操作选项。
工具栏
[
toolbar
](
js-components-basic-toolbar.md
)
子组件。 用于展示工具栏上的一个操作选项。
## 子组件
...
...
@@ -59,13 +59,13 @@
```
html
<!-- xxx.hml -->
<toolbar
style=
"position
: fixed; bottom: 0px; "
>
<toolbar-item
icon=
'common/Icon/location.png'
value=
'Option 1'
>
</toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 2'
>
</toolbar-item>
<toolbar-item
icon=
'common/Icon/diamond.png'
value=
'Option 3'
>
</toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 4'
>
</toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 5'
>
</toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 6'
>
</toolbar-item>
<toolbar
style=
"position
: fixed; bottom : 0px;"
>
<toolbar-item
icon=
'common/Icon/location.png'
value=
'Option 1'
>
</toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 2'
></toolbar-item>
<toolbar-item
icon=
'common/Icon/diamond.png'
value=
'Option 3'
></toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 4'
></toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 5'
>
</toolbar-item>
<toolbar-item
icon=
'common/Icon/heart.png'
value=
'Option 6'
></toolbar-item>
</toolbar>
```
...
...
zh-cn/application-dev/reference/arkui-js/js-components-container-swiper.md
浏览文件 @
099e7f39
...
...
@@ -12,7 +12,7 @@
## 子组件
支持除
<
list
>
之外的
子组件。
可以包含
子组件。
## 属性
...
...
zh-cn/application-dev/reference/arkui-ts/ts-container-row.md
浏览文件 @
099e7f39
...
...
@@ -20,7 +20,7 @@ Row(value?:{space?: number | string })
| 参数名 | 参数类型 | 必填 | 参数描述 |
| -------- | -------- | -------- | -------- |
| space | string
\|
number | 否 | 横向布局元素间距。
<br/>
默认值:0 |
| space | string
\|
number | 否 | 横向布局元素间距。
<br/>
默认值:0
,单位vp
|
## 属性
...
...
zh-cn/application-dev/reference/arkui-ts/ts-gesture-settings.md
浏览文件 @
099e7f39
...
...
@@ -45,7 +45,7 @@
## 响应手势事件
组件通过gesture方法绑定手势对象,可以通过手势对象提供的事件相应响应手势操作。例如通过TapGesture对象的onAction事件响应点击事件。其余手势的事件定义见各个手势对象章节。
组件通过gesture方法绑定手势对象,可以通过手势对象提供的事件相应响应手势操作。例如通过TapGesture对象的onAction事件响应点击事件。其余手势的事件定义见各个手势对象章节。
若需绑定多种手势请使用
[
组合手势
](
ts-combined-gestures.md
)
。
-
TapGesture事件说明
| 名称 | 功能描述 |
...
...
zh-cn/application-dev/reference/arkui-ts/ts-offscreencanvasrenderingcontext2d.md
浏览文件 @
099e7f39
此差异已折叠。
点击以展开。
zh-cn/application-dev/reference/arkui-ts/ts-transition-animation-shared-elements.md
浏览文件 @
099e7f39
...
...
@@ -12,7 +12,7 @@
| 名称 | 参数 | 参数描述 |
| ---------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| sharedTransition | id:
string,
<br/>
{
<br/>
duration?: number,
<br/>
curve?: Curve
\|
string,
<br/>
delay?: number,
<br/>
motionPath?:
<br/>
{
<br/>
path: string,
<br/>
form?: number,
<br/>
to?: number,
<br/>
rotatable?: boolean
<br/>
},
<br/>
zIndex?: number,
<br/>
type?:
[
SharedTransitionEffectType
](
ts-appendix-enums.md#sharedtransitioneffecttype
)
<br/>
} | 两个页面中id值相同且不为空字符串的组件即为共享元素,在页面转场时可显示共享元素转场动效。
<br/>
-
id:设置组件的id。
<br/>
-
duration:单位为毫秒,默认动画时长为1000毫秒。
<br/>
-
curve:默认曲线为Linear,有效值参见[Curve](ts-animatorproperty.md)
说明。
<br/>
-
delay:单位为毫秒,默认不延时播放。
<br/>
-
motionPath:运动路径信息。
<br/>
-
path:设置路径。
<br/>
-
from:设置起始值。
<br/>
-
to:设置终止值。
<br/>
-
rotatable:是否旋转。
<br/>
-
zIndex:设置Z轴。
<br/>
-
type:动画类型。 |
| sharedTransition | id:
string,
<br/>
{
<br/>
duration?: number,
<br/>
curve?: Curve
\|
string,
<br/>
delay?: number,
<br/>
motionPath?:
<br/>
{
<br/>
path: string,
<br/>
form?: number,
<br/>
to?: number,
<br/>
rotatable?: boolean
<br/>
},
<br/>
zIndex?: number,
<br/>
type?:
[
SharedTransitionEffectType
](
ts-appendix-enums.md#sharedtransitioneffecttype
)
<br/>
} | 两个页面中id值相同且不为空字符串的组件即为共享元素,在页面转场时可显示共享元素转场动效。
<br/>
-
id:设置组件的id。
<br/>
-
duration:单位为毫秒,默认动画时长为1000毫秒。
<br/>
-
curve:默认曲线为Linear,有效值参见[Curve](ts-animatorproperty.md)
说明。
<br/>
-
delay:单位为毫秒,默认不延时播放。
<br/>
-
motionPath:运动路径信息。
<br/>
-
path:设置路径。
<br/>
-
from:设置起始值。
<br/>
-
to:设置终止值。
<br/>
-
rotatable:是否旋转。
<br/>
-
zIndex:设置Z轴。
<br/>
-
type:动画类型。 |
## 示例
...
...
zh-cn/application-dev/ui/arkui-overview.md
浏览文件 @
099e7f39
...
...
@@ -14,7 +14,7 @@
## 主要特征
-
UI组件:方舟开发框架不仅提供了多种基础组件,
如文本显示、图片显示、按键交互等
,也提供了支持视频播放能力的媒体组件。并且针对不同类型设备进行了组件设计,提供了组件在不同平台上的样式适配能力,此种组件称为“多态组件”。
-
UI组件:方舟开发框架不仅提供了多种基础组件,
例如文本、图片、按钮等
,也提供了支持视频播放能力的媒体组件。并且针对不同类型设备进行了组件设计,提供了组件在不同平台上的样式适配能力,此种组件称为“多态组件”。
-
布局:UI界面设计离不开布局的参与。方舟开发框架提供了多种布局方式,不仅保留了经典的弹性布局能力,也提供了列表、宫格、栅格布局和适应多分辨率场景开发的原子布局能力。
...
...
zh-cn/application-dev/ui/figures/custom-dialog-demo.gif
0 → 100644
浏览文件 @
099e7f39
507.9 KB
zh-cn/application-dev/ui/js-framework-syntax-js.md
浏览文件 @
099e7f39
...
...
@@ -164,8 +164,8 @@ JS文件用来定义HML页面的业务逻辑,支持ECMA规范的JavaScript语
images
:
[
{
src
:
'
/common/frame1.png
'
},
{
src
:
'
/common/frame2.png
'
},
{
src
:
'
/common/frame3.png
'
}
,
]
,
{
src
:
'
/common/frame3.png
'
}
]
},
handleClick
()
{
const
animator
=
this
.
$refs
.
animator
;
// 获取ref属性为animator的DOM元素
...
...
@@ -196,8 +196,8 @@ JS文件用来定义HML页面的业务逻辑,支持ECMA规范的JavaScript语
images
:
[
{
src
:
'
/common/frame1.png
'
},
{
src
:
'
/common/frame2.png
'
},
{
src
:
'
/common/frame3.png
'
}
,
]
,
{
src
:
'
/common/frame3.png
'
}
]
},
handleClick
()
{
const
animator
=
this
.
$element
(
'
animator
'
);
// 获取id属性为animator的DOM元素
...
...
zh-cn/application-dev/ui/ts-component-based-customdialog.md
浏览文件 @
099e7f39
...
...
@@ -47,3 +47,5 @@ struct CustomDialogUser {
}
}
```
![
custom-dialog-demo
](
figures/custom-dialog-demo.gif
)
\ No newline at end of file
zh-cn/application-dev/ui/ui-js-components-path2d.md
浏览文件 @
099e7f39
...
...
@@ -17,58 +17,62 @@
```
css
/* xxx.css */
.container
{
flex-direction
:
column
;
background-color
:
#F1F3F5
;
align-items
:
center
;
justify-content
:
center
;
width
:
100%
;
.container
{
flex-direction
:
column
;
background-color
:
#F1F3F5
;
align-items
:
center
;
justify-content
:
center
;
width
:
100%
;
}
canvas
{
width
:
600px
;
height
:
600px
;
background-color
:
#fdfdfd
;
border
:
5px
solid
red
;
canvas
{
width
:
600px
;
height
:
600px
;
background-color
:
#fdfdfd
;
border
:
5px
solid
red
;
}
```
```
js
// xxx.js
import
prompt
from
'
@system.prompt
'
;
export
default
{
onShow
(){
let
ctx
=
this
.
$refs
.
canvas
.
getContext
(
'
2d
'
,{
antialias
:
true
});
let
path
=
ctx
.
createPath2D
();
// 房顶
path
.
moveTo
(
10
,
300
);
path
.
lineTo
(
210
,
100
);
path
.
lineTo
(
410
,
300
);
// 屋子
path
.
moveTo
(
10
,
300
);
path
.
lineTo
(
410
,
300
);
path
.
lineTo
(
410
,
600
);
path
.
lineTo
(
10
,
600
);
path
.
closePath
();
// 窗子
path
.
moveTo
(
50
,
450
);
path
.
bezierCurveTo
(
70
,
350
,
130
,
350
,
150
,
450
);
path
.
closePath
();
// 门
path
.
moveTo
(
250
,
450
);
path
.
rect
(
250
,
450
,
350
,
600
);
path
.
closePath
();
// 烟囱
path
.
moveTo
(
365
,
250
);
path
.
ellipse
(
310
,
215
,
30
,
130
,
0
,
Math
.
PI
*
0.04
,
Math
.
PI
*
1.1
,
1
);
// 树
path
.
moveTo
(
485
,
450
);
path
.
quadraticCurveTo
(
510
,
500
,
485
,
600
);
path
.
moveTo
(
550
,
450
);
path
.
quadraticCurveTo
(
525
,
500
,
550
,
600
);
path
.
moveTo
(
600
,
535
);
path
.
arc
(
520
,
450
,
85
,
0
,
6
);
ctx
.
stroke
(
path
);
},
onShow
()
{
let
ctx
=
this
.
$refs
.
canvas
.
getContext
(
'
2d
'
,
{
antialias
:
true
});
let
path
=
ctx
.
createPath2D
();
// 房顶
path
.
moveTo
(
10
,
300
);
path
.
lineTo
(
210
,
100
);
path
.
lineTo
(
410
,
300
);
// 屋子
path
.
moveTo
(
10
,
300
);
path
.
lineTo
(
410
,
300
);
path
.
lineTo
(
410
,
600
);
path
.
lineTo
(
10
,
600
);
path
.
closePath
();
// 窗子
path
.
moveTo
(
50
,
450
);
path
.
bezierCurveTo
(
70
,
350
,
130
,
350
,
150
,
450
);
path
.
closePath
();
// 门
path
.
moveTo
(
250
,
450
);
path
.
rect
(
250
,
450
,
350
,
600
);
path
.
closePath
();
// 烟囱
path
.
moveTo
(
365
,
250
);
path
.
ellipse
(
310
,
215
,
30
,
130
,
0
,
Math
.
PI
*
0.04
,
Math
.
PI
*
1.1
,
1
);
// 树
path
.
moveTo
(
485
,
450
);
path
.
quadraticCurveTo
(
510
,
500
,
485
,
600
);
path
.
moveTo
(
550
,
450
);
path
.
quadraticCurveTo
(
525
,
500
,
550
,
600
);
path
.
moveTo
(
600
,
535
);
path
.
arc
(
520
,
450
,
85
,
0
,
6
);
ctx
.
stroke
(
path
);
}
}
```
...
...
@@ -84,46 +88,49 @@ export default {
```
html
<!-- xxx.hml -->
<div
class=
"container"
>
<canvas
ref=
"canvas"
></canvas>
<div
class=
"content"
>
<text
onclick=
"addPath"
>
{{ isAdd }}
</text>
<text
onclick=
"setTransform"
>
{{textName
}}
</text>
</div>
<canvas
ref=
"canvas"
></canvas>
<div
class=
"content"
>
<text
onclick=
"addPath"
>
{{ isAdd }}
</text>
<text
onclick=
"setTransform"
>
{{ textName
}}
</text>
</div>
</div>
```
```
css
/* xxx.css */
.container
{
flex-direction
:
column
;
background-color
:
#F1F3F5
;
align-items
:
center
;
justify-content
:
center
;
width
:
100%
;
.container
{
flex-direction
:
column
;
background-color
:
#F1F3F5
;
align-items
:
center
;
justify-content
:
center
;
width
:
100%
;
}
canvas
{
width
:
600px
;
height
:
600px
;
background-color
:
#fdfdfd
;
border
:
5px
solid
red
;
canvas
{
width
:
600px
;
height
:
600px
;
background-color
:
#fdfdfd
;
border
:
5px
solid
red
;
}
.content
{
width
:
80%
;
margin-top
:
50px
;
margin-bottom
:
50px
;
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
space-around
;
.content
{
width
:
80%
;
margin-top
:
50px
;
margin-bottom
:
50px
;
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
space-around
;
}
text
{
width
:
150px
;
height
:
80px
;
color
:
white
;
border-radius
:
20px
;
text-align
:
center
;
background-color
:
#6060e7
;
margin-bottom
:
30px
;
text
{
width
:
150px
;
height
:
80px
;
color
:
white
;
border-radius
:
20px
;
text-align
:
center
;
background-color
:
#6060e7
;
margin-bottom
:
30px
;
}
```
...
...
@@ -131,58 +138,66 @@ text{
```
js
// xxx.js
import
prompt
from
'
@system.prompt
'
;
export
default
{
data
:{
ctx
:
null
,
path1
:
null
,
path2
:
null
,
path3
:
null
,
isAdd
:
"
addPath2
"
,
isChange
:
true
,
textName
:
'
change
'
},
onShow
(){
this
.
ctx
=
this
.
$refs
.
canvas
.
getContext
(
'
2d
'
,{
antialias
:
true
});
this
.
path1
=
this
.
ctx
.
createPath2D
();
this
.
path1
.
moveTo
(
200
,
200
);
this
.
path1
.
lineTo
(
400
,
200
);
this
.
path1
.
lineTo
(
400
,
400
);
this
.
path1
.
lineTo
(
200
,
400
);
this
.
path1
.
closePath
();
this
.
path2
=
this
.
ctx
.
createPath2D
();
this
.
path2
.
arc
(
300
,
300
,
75
,
0
,
6.28
)
this
.
ctx
.
stroke
(
this
.
path1
);
},
addPath
(){
if
(
this
.
isAdd
==
"
addPath2
"
){
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
)
this
.
ctx
.
beginPath
();
this
.
path2
.
addPath
(
this
.
path1
)
this
.
ctx
.
stroke
(
this
.
path2
);
this
.
isAdd
=
"
clearPath2
"
}
else
{
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
)
this
.
ctx
.
stroke
(
this
.
path1
);
this
.
isAdd
=
"
addPath2
"
}
},
setTransform
(){
if
(
this
.
isChange
){
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
)
this
.
path3
=
this
.
ctx
.
createPath2D
();
this
.
path3
.
arc
(
150
,
150
,
100
,
0
,
6.28
)
this
.
path3
.
setTransform
(
2
,
0.1
,
0.1
,
2
,
0
,
0
);
this
.
ctx
.
stroke
(
this
.
path3
);
this
.
isChange
=
!
this
.
isChange
;
this
.
textName
=
"
back
"
}
else
{
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
)
this
.
path3
.
setTransform
(
0.5
,
-
0.1
,
-
0.1
,
0.5
,
0
,
0
);
this
.
ctx
.
stroke
(
this
.
path3
);
this
.
isChange
=
!
this
.
isChange
;
this
.
textName
=
"
change
"
data
:
{
ctx
:
null
,
path1
:
null
,
path2
:
null
,
path3
:
null
,
isAdd
:
"
addPath2
"
,
isChange
:
true
,
textName
:
'
change
'
},
onShow
()
{
this
.
ctx
=
this
.
$refs
.
canvas
.
getContext
(
'
2d
'
,
{
antialias
:
true
});
this
.
path1
=
this
.
ctx
.
createPath2D
();
// 正方形
this
.
path1
.
moveTo
(
200
,
200
);
this
.
path1
.
lineTo
(
400
,
200
);
this
.
path1
.
lineTo
(
400
,
400
);
this
.
path1
.
lineTo
(
200
,
400
);
this
.
path1
.
closePath
();
this
.
path2
=
this
.
ctx
.
createPath2D
();
// 圆形
this
.
path2
.
arc
(
300
,
300
,
75
,
0
,
6.28
);
this
.
ctx
.
stroke
(
this
.
path1
);
},
addPath
()
{
if
(
this
.
isAdd
==
"
addPath2
"
)
{
// 删除指定指定区域的绘制内容
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
);
this
.
ctx
.
beginPath
();
// 将另一个的路径添加到当前路径对象中
this
.
path2
.
addPath
(
this
.
path1
);
this
.
ctx
.
stroke
(
this
.
path2
);
this
.
isAdd
=
"
clearPath2
"
;
}
else
{
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
);
this
.
ctx
.
stroke
(
this
.
path1
);
this
.
isAdd
=
"
addPath2
"
;
}
},
setTransform
()
{
if
(
this
.
isChange
)
{
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
);
this
.
path3
=
this
.
ctx
.
createPath2D
();
this
.
path3
.
arc
(
150
,
150
,
100
,
0
,
6.28
);
// 重置现有的变换矩阵并创建新的变换矩阵
this
.
path3
.
setTransform
(
2
,
0.1
,
0.1
,
2
,
0
,
0
);
this
.
ctx
.
stroke
(
this
.
path3
);
this
.
isChange
=
!
this
.
isChange
;
this
.
textName
=
"
back
"
}
else
{
this
.
ctx
.
clearRect
(
0
,
0
,
600
,
600
);
this
.
path3
.
setTransform
(
0.5
,
-
0.1
,
-
0.1
,
0.5
,
0
,
0
);
this
.
ctx
.
stroke
(
this
.
path3
);
this
.
isChange
=
!
this
.
isChange
;
this
.
textName
=
"
change
"
;
}
}
},
}
```
...
...
zh-cn/application-dev/ui/ui-ts-building-category-grid-layout.md
浏览文件 @
099e7f39
...
...
@@ -320,7 +320,7 @@
}
```
自定义组件提供了两个生命周期的回调接口aboutToAppear和aboutToDisappear。aboutToAppear的执行时机在创建自定义组件后,执行自定义组件build方法之前。aboutToDisappear在自定义组件
的去初始化
的时机执行。
自定义组件提供了两个生命周期的回调接口aboutToAppear和aboutToDisappear。aboutToAppear的执行时机在创建自定义组件后,执行自定义组件build方法之前。aboutToDisappear在自定义组件
销毁之前
的时机执行。
!
[
zh-cn_image_0000001215113569
](
figures/zh-cn_image_0000001215113569.png
)
...
...
zh-cn/application-dev/ui/ui-ts-layout-mediaquery.md
浏览文件 @
099e7f39
...
...
@@ -130,7 +130,7 @@ listener.on('change', onPortrait)
}
aboutToAppear() {
portraitFunc = this.onPortrait.bind(this) //
bind current js instance
portraitFunc = this.onPortrait.bind(this) //
绑定当前应用实例
this.listener.on('change', portraitFunc)
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录