• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 分布式迁移标识
2
3组件的分布式迁移标识,指明了该组件在分布式迁移场景下可以将特定状态恢复到对端设备。
4
5>  **说明:**
6>
7>  从API version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8
9## restoreId
10
11restoreId(value: number): T
12
13标记支持分布式迁移的组件Id,用于两端设备组件的配对。
14
15**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
16
17**系统能力:** SystemCapability.ArkUI.ArkUI.Full
18
19**参数:**
20
21| 参数名 | 类型   | 必填 | 说明                                                         |
22| ------ | ------ | ---- | ------------------------------------------------------------ |
23| value  | number | 是   | 标记支持分布式迁移的组件Id,用于两端设备组件的配对。同一个应用中各个支持分布式迁移组件的Id必须不同。 |
24
25**返回值:**
26
27| 类型 | 说明 |
28| -------- | -------- |
29| T | 返回当前组件。 |
30
31## 支持的组件
32
33| 组件名称      | 起始版本 | 迁移状态                                     |
34| --------- | ---- | ---------------------------------------- |
35| List      | 8    | 迁移当前设备显示在顶部ListItem的索引值,迁移后在对端设备上,将迁移索引值对应的ListItem在List中完整地置顶显示。 |
36| Grid      | 9    | 迁移当前设备显示在顶部GridItem的索引值,迁移后在对端设备上,将迁移索引值对应的GridItem在Grid中完整地置顶显示。ScrollBar位置无法迁移。 |
37| Scroll    | 9    | 迁移距顶部滚动的绝对距离。两端设备显示规格不同等原因导致布局不一致,会影响迁移效果。 |
38| WaterFlow | 11   | 迁移当前设备显示在顶部FlowItem的索引值,迁移后在对端设备上,将迁移索引值对应的FlowItem在WaterFlow顶部显示。同时迁移顶部FlowItem相对WaterFlow的主轴偏移值(vp单位)。 |
39
40## 示例
41
42该示例通过restoreId设置了List组件的分布式迁移标识。
43
44```ts
45// xxx.ets
46@Entry
47@Component
48struct RestoreIdExample {
49  private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
50  build() {
51    Column() {
52      List({ space: 20 }) {
53        ForEach(this.arr, (item:number) => {
54          ListItem() {
55            Text('' + item)
56              .width('100%')
57              .height(100)
58              .fontSize(16)
59              .textAlign(TextAlign.Center)
60              .borderRadius(10)
61              .backgroundColor(Color.Pink)
62          }
63        }, (item:number) => (item.toString()))
64      }
65      .restoreId(1)
66    }
67  }
68}
69```
70