1# QRCode
2
3用于显示单个二维码的组件。
4
5>  **说明:**
6>
7> 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8>
9> 二维码组件的像素点数量与内容有关,当组件尺寸过小时,可能出现无法展示内容的情况,此时需要适当调整组件尺寸。
10
11
12## 子组件
13
1415
16
17## 接口
18
19QRCode(value: string)
20
21**卡片能力:** 从API version 9开始,该接口支持在ArkTS卡片中使用。
22
23**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
24
25**系统能力:** SystemCapability.ArkUI.ArkUI.Full
26
27**参数:**
28
29| 参数名 | 类型 | 必填 | 说明 |
30| -------- | -------- | -------- | -------- |
31| value | string | 是 | 二维码内容字符串。最大支持512个字符,若超出,则截取前512个字符。<br/>**说明:** <br/>该字符串内容确保有效,不支持null、undefined以及空内容,当传入上述内容时,将生成无效二维码。 |
32
33## 属性
34
35除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性:
36
37### color
38
39color(value: ResourceColor)
40
41设置二维码颜色。
42
43**卡片能力:** 从API version 9开始,该接口支持在ArkTS卡片中使用。
44
45**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
46
47**系统能力:** SystemCapability.ArkUI.ArkUI.Full
48
49**参数:**
50
51| 参数名 | 类型                                       | 必填 | 说明         |
52| ------ | ------------------------------------------ | ---- | ------------ |
53| value  | [ResourceColor](ts-types.md#resourcecolor) | 是   | 二维码颜色。默认值:'#ff000000',且不跟随系统深浅色模式切换而修改。<br/> |
54
55### backgroundColor
56
57backgroundColor(value: ResourceColor)
58
59设置二维码背景颜色。
60
61**卡片能力:** 从API version 9开始,该接口支持在ArkTS卡片中使用。
62
63**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
64
65**系统能力:** SystemCapability.ArkUI.ArkUI.Full
66
67**参数:**
68
69| 参数名 | 类型                                       | 必填 | 说明                                                         |
70| ------ | ------------------------------------------ | ---- | ------------------------------------------------------------ |
71| value  | [ResourceColor](ts-types.md#resourcecolor) | 是   | 二维码背景颜色。<br/>默认值:Color.White <br/>从API version 11开始,默认值改为'#ffffffff',且不跟随系统深浅色模式切换而修改。 |
72
73### contentOpacity<sup>11+</sup>
74
75contentOpacity(value: number | Resource)
76
77设置二维码内容颜色的不透明度。不透明度最小值为0,最大值为1。
78
79**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
80
81**系统能力:** SystemCapability.ArkUI.ArkUI.Full
82
83**参数:**
84
85| 参数名 | 类型                                                 | 必填 | 说明                                     |
86| ------ | ---------------------------------------------------- | ---- | ---------------------------------------- |
87| value  | number&nbsp;\|&nbsp;[Resource](ts-types.md#resource) | 是   | 二维码内容颜色的不透明度。<br/>默认值:1 |
88
89
90## 事件
91
92通用事件支持[点击事件](ts-universal-events-click.md)、[触摸事件](ts-universal-events-touch.md)、[挂载卸载事件](ts-universal-events-show-hide.md)。
93
94
95## 示例
96
97该示例展示了QRCode组件的基本使用方法,通过color属性设置二维码颜色、backgroundColor属性设置二维码背景颜色、contentOpacity属性设置二维码不透明度。
98
99```ts
100// xxx.ets
101@Entry
102@Component
103struct QRCodeExample {
104  private value: string = 'hello world'
105
106  build() {
107    Column({ space: 5 }) {
108      Text('normal').fontSize(9).width('90%').fontColor(0xCCCCCC).fontSize(30)
109      QRCode(this.value).width(140).height(140)
110
111      // 设置二维码颜色
112      Text('color').fontSize(9).width('90%').fontColor(0xCCCCCC).fontSize(30)
113      QRCode(this.value).color(0xF7CE00).width(140).height(140)
114
115      // 设置二维码背景色
116      Text('backgroundColor').fontSize(9).width('90%').fontColor(0xCCCCCC).fontSize(30)
117      QRCode(this.value).width(140).height(140).backgroundColor(Color.Orange)
118
119      // 设置二维码不透明度
120      Text('contentOpacity').fontSize(9).width('90%').fontColor(0xCCCCCC).fontSize(30)
121      QRCode(this.value).width(140).height(140).color(Color.Black).contentOpacity(0.1)
122    }.width('100%').margin({ top: 5 })
123  }
124}
125```
126
127![qrcode](figures/qrcode.png)
128