1# 分布式迁移标识 2 3组件的分布式迁移标识,指明了该组件在分布式迁移场景下可以将特定状态恢复到对端设备。 4 5> **说明:** 6> 7> 从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 8 9## 属性 10 11| 名称 | 参数类型 | 描述 | 12| -------- | -------- | -------- | 13| restoreId | number | 标记支持分布式迁移的组件Id,用于两端设备组件的配对。同一个应用中各个支持分布式迁移组件的Id必须不同。 | 14 15## 支持的组件 16 17| 组件名称 | 起始API版本 | 迁移状态 | 18| -------- | -------- | -------- | 19| List | 8 | 迁移当前设备显示在顶部ListItem的索引值,迁移后在对端设备上,将迁移索引值对应的ListItem在List中完整地置顶显示。 | 20| Grid | 9 | 迁移当前设备显示在顶部GridItem的索引值,迁移后在对端设备上,将迁移索引值对应的GridItem在Grid中完整地置顶显示。ScrollBar位置无法迁移。 | 21| Scroll | 9 | 迁移距顶部滚动的绝对距离。两端设备显示规格不同等原因导致布局不一致,会影响迁移效果。 | 22| TextArea | 9 | 迁移输入的文本内容和光标位置。 | 23| TextInput | 9 | 迁移输入的文本内容和光标位置。 | 24 25## 示例 26 27```ts 28// xxx.ets 29@Entry 30@Component 31struct RestoreIdExample { 32 private arr: number[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 33 build() { 34 Column() { 35 List({ space: 20 }) { 36 ForEach(this.arr, (item) => { 37 ListItem() { 38 Text('' + item) 39 .width('100%') 40 .height(100) 41 .fontSize(16) 42 .textAlign(TextAlign.Center) 43 .borderRadius(10) 44 .backgroundColor(Color.Pink) 45 } 46 }, item => item) 47 } 48 .restoreId(1) 49 } 50 } 51} 52``` 53