![](https://help.apple.com/assets/5B296C8B680CE27831E138C3/5B296C8E680CE27831E138D3/zh_CN/c10e8a839dc838a25d0feb0e9e428a0a.png)
在“捷径”中使用“重复”操作
“重复”操作和“为每个项目重复”操作允许您在捷径中连续多次运行一组操作。
使用“重复”操作
将“重复”操作添加到捷径中时,操作会包括两个标记:“重复”(不显示为单独的标签)和“结束重复”。将要重复运行的操作放在“重复”和“结束重复”标记之间,然后指定想要操作重复的次数。捷径运行时,标记之间放置的操作会按您指定的循环次数循环运行。
例如,包含“使设备振动”操作且设为“重复 3 次”的重复循环会在捷径运行时使您的 iOS 设备振动三次。
![设为重复三次的“使设备振动”操作。](https://help.apple.com/assets/5B296C8B680CE27831E138C3/5B296C8E680CE27831E138D3/zh_CN/0cadbcd71ee44cf09a39f39a3c46ccfc.png)
您可以在重复循环内放置无限多个操作。操作按顺序从上到下运行,当到达最后一个操作时,捷径会回到第一个操作,然后再次运行,直到运行了指定的次数。
【提示】在捷径中,您可以将“重复”操作放在彼此内部: 在捷径编辑器中拖移第二个“重复”操作,使其与第一个“重复”操作的下部重叠。 则第二个“重复”操作会嵌套(缩进)到第一个“重复”操作的下方。
关于“重复”操作中的输入流
将输入传入“重复”操作时,相同的输入会传入循环中每一次迭代的开头。例如,如果捷径中包含一个“文本”操作,其后是一个带有“朗读文本”操作的重复循环,则捷径会将相同的文本朗读多次。
![“文本”操作之后是“重复”操作,设为循环 3 次。](https://help.apple.com/assets/5B296C8B680CE27831E138C3/5B296C8E680CE27831E138D3/zh_CN/d5b1ce2a9bcd6127c058ec240a79087a.png)
重复循环中每一次迭代的最后一个操作的输出会集中在一个列表中,此列表会成为整个“重复”操作的输出。
![“重复”操作示例。](https://help.apple.com/assets/5B296C8B680CE27831E138C3/5B296C8E680CE27831E138D3/zh_CN/a81aab6b9ecb1ec1e432c18e81e20a93.png)
例如,一个运行四次且包含“获取最新的照片”操作的“重复”操作会在循环的每一次迭代中输出存储到“照片”的最近照片。四次迭代全部运行完成后,输出会集中到一起,并创建一个包含四张相同照片的列表。这四张照片会成为整个“重复”操作的输出,然后传递到重复循环之后的下一个操作。
若要了解输入流和输出流的更多信息,请参阅捷径如何工作?
使用“为每个项目重复”操作
“为每个项目重复”操作接收项目列表作为输入,然后针对列表中的每一项运行一次同一组操作。处理多个文件或多份内容时,此操作会很有帮助。这种类型的循环会一直重复,直到将传入“为每个项目重复”操作中的每一项都进行了迭代。
例如,如果有一个“获取临近日程”操作设为取回接下来的四个临近“日历”日程,而您将“为每个项目重复”操作放在此操作之后,则重复循环会运行四次,每一次迭代都接收其中一个“日历”日程作为输入。
将“为每个项目重复”操作添加到捷径中时,操作会包括两个标记: “为每个项目重复”(不显示为单独的标签)和“结束重复”。
在重复循环的结尾,传递到“结束重复”标记的每一次迭代的输出会集中起来,作为整个“为每个项目重复”操作的输出。
“重复项目”变量
“为每个项目重复”操作提供了一个用于跟踪当前项目的特殊变量:“重复项目”。“重复项目”变量会在循环每一次迭代时更新,其中包含传入本次迭代的项目。
例如,如果您将 10 个“日历”项目传入“为每个项目重复”操作,则随着捷径循环过每一个“日历”项目,每一次迭代中的“重复项目”变量就代表其中一个“日历”日程。
【注】如果将一个“为每个项目重复”操作放入另一个“为每个项目重复”操作内,则变量名称会变为“重复项目 1”或“重复项目 2”,分别代表重复内部的项目和更深一层循环的项目,以此类推。
“重复索引”变量
所有重复循环都提供一个用于跟踪当前循环迭代的特殊变量,叫做“重复索引”。“重复索引”变量包含目前为止循环已经重复的次数,从 1 开始(代表循环中的第一次迭代),每次增加一。循环运行的第二次,“重复索引”为 2;循环运行的第三次,“重复索引”为 3;以此类推。
【注】如果将一个“重复”操作放在另一个“重复”操作内(即创建了嵌套重复循环),则内部“重复”操作的变量名称会变为“重复索引 2”。另一个内嵌“重复”操作则会提供“重复索引 3”变量,以此类推。
有关更多信息,请参阅在“捷径”中使用变量。
创建无限循环
虽然“捷径”不提供永远重复运行一组操作的操作,但您可以使用“运行捷径”操作来模仿这一行为。“运行捷径”操作允许您在一个捷径内运行另一个捷径。配置“运行捷径”操作以运行其内部包含的同一个捷径,它会从头到尾一直重复,直到您停止捷径。
测试输出
学习使用“重复”和“为每个项目重复”时,测试“结束重复”标记之后产生的结果对于确保获得了想要的内容是很有帮助的。在“结束重复”标记之后放置“快速查看”操作以预览重复循环输出的项目。
您还可以在“结束重复”标记之后放置“显示提醒”操作,并在信息框中插入“重复结果”魔法变量以显示循环输出的文本。如果正在测试长捷径中间的循环,使用“显示提醒”操作来预览结果是很有帮助的,因为您可以在提醒中包括一个“取消”按钮来在此循环处结束捷径。