Class DecoratedText

带装饰的文本

一种用于显示文本的 widget,可选择添加装饰。可能的键包括图标、上方的标签和下方的标签。必须使用 setText(text)DecoratedTextDecoratedTextsetTopLabel(text)setBottomLabel(text) 中的一个来设置文本内容和其中一个键。此类旨在替换 KeyValue

适用于 Google Workspace 插件和 Google Chat 应用。

const decoratedText =
    CardService.newDecoratedText().setText('Text').setTopLabel('TopLabel');

const multilineDecoratedText = CardService.newDecoratedText()
                                   .setText('Text')
                                   .setTopLabel('TopLabel')
                                   .setWrapText(true)
                                   .setBottomLabel('BottomLabel');

方法

方法返回类型简介
addEventAction(eventAction)Widget添加可在 widget 上执行的事件操作。
setAuthorizationAction(action)DecoratedText设置授权操作,以便在点击对象时打开网址以进入授权流程。
setBottomLabel(text)DecoratedText设置用作键且显示在文本内容下方的标签文本。
setButton(button)DecoratedText设置显示在文字右侧的 Button
setComposeAction(action, composedEmailType)DecoratedText设置在点击对象时撰写电子邮件草稿的操作。
setEndIcon(endIcon)DecoratedText设置显示在内容右侧的可选 IconImage
setId(id)Widget设置用于标识要发生变异的 widget 的唯一 ID。
setOnClickAction(action)DecoratedText设置在点击对象时执行的操作。
setOnClickOpenLinkAction(action)DecoratedText设置一项操作,以便在点击对象时在标签页中打开网址。
setOpenLink(openLink)DecoratedText设置在点击对象时要打开的网址。
setStartIcon(startIcon)DecoratedText设置要在文本内容之前显示的可选 IconImage
setSwitchControl(switchToSet)DecoratedText设置显示在内容右侧的 Switch
setText(text)DecoratedText设置要用作值的文本。
setTopLabel(text)DecoratedText设置用作键且显示在文本内容上方的标签文本。
setVisibility(visibility)Widget设置 widget 的可见性。
setWrapText(wrapText)DecoratedText设置值文本是应显示在单行上还是多行上。

详细文档

addEventAction(eventAction)

添加可在 widget 上执行的事件操作。

参数

名称类型说明
eventActionEventAction要添加的 EventAction

返回

Widget - 用于链式调用的对象。


setAuthorizationAction(action)

设置授权操作,以便在点击对象时打开网址以进入授权流程。系统随即会在新窗口中打开相应网址。当用户完成授权流程并返回到应用时,该插件会重新加载。

一个界面对象只能设置 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

// ...

const action = CardService.newAuthorizationAction().setAuthorizationUrl('url');
CardService.newTextButton().setText('Authorize').setAuthorizationAction(action);

参数

名称类型说明
actionAuthorizationAction用于指定点击此元素时要采取的授权操作的对象。

返回

DecoratedText - 此对象,用于链式调用。


setBottomLabel(text)

设置用作键且显示在文本内容下方的标签文本。

参数

名称类型说明
textString标签文本。

返回

DecoratedText - 此对象,用于链式调用。


setButton(button)

设置显示在文字右侧的 Button。一个 DecoratedText 只能支持一个按钮或一个开关。

参数

名称类型说明
buttonButton要添加的按钮。

返回

DecoratedText - 此对象,用于链式调用。


setComposeAction(action, composedEmailType)

设置在点击对象时撰写电子邮件草稿的操作。一个界面对象只能设置 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

Action 参数必须指定一个回调函数,该函数返回使用 ComposeActionResponseBuilder.setGmailDraft(draft) 配置的 ComposeActionResponse 对象。

// ...

const action = CardService.newAction().setFunctionName('composeEmailCallback');
CardService.newTextButton()
    .setText('Compose Email')
    .setComposeAction(action, CardService.ComposedEmailType.REPLY_AS_DRAFT);

// ...

function composeEmailCallback(e) {
  const thread = GmailApp.getThreadById(e.threadId);
  const draft = thread.createDraftReply('This is a reply');
  return CardService.newComposeActionResponseBuilder()
      .setGmailDraft(draft)
      .build();
}

参数

名称类型说明
actionAction用于指定点击相应元素时要执行的撰写操作的对象。
composedEmailTypeComposedEmailType一个枚举值,用于指定撰写的草稿是独立草稿还是回复草稿。

返回

DecoratedText - 此对象,用于链式调用。


setEndIcon(endIcon)

设置显示在内容右侧的可选 IconImage。一个 DecoratedText 只能支持一个按钮、一个开关或一个图标。

参数

名称类型说明
endIconIconImage要添加的图标。

返回

DecoratedText - 此对象,用于链式调用。


setId(id)

设置用于标识要发生变异的 widget 的唯一 ID。只有在插件中支持 widget 突变。

参数

名称类型说明
idString微件的 ID,最多可包含 64 个字符,格式为 `[a-zA-Z0-9-]+`。

返回

Widget - 此对象,用于链式调用。


setOnClickAction(action)

设置在点击对象时执行的操作。一个界面对象只能设置 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

Action 参数必须指定一个返回 ActionResponse 对象的回调函数。

// ...

const action = CardService.newAction().setFunctionName('notificationCallback');
CardService.newTextButton()
    .setText('Create notification')
    .setOnClickAction(action);

// ...

function notificationCallback() {
  return CardService.newActionResponseBuilder()
      .setNotification(
          CardService.newNotification().setText('Some info to display to user'),
          )
      .build();
}

参数

名称类型说明
actionAction点击此元素时要执行的操作。

返回

DecoratedText - 此对象,用于链式调用。


setOnClickOpenLinkAction(action)

设置一项操作,以便在点击对象时在标签页中打开网址。当需要构建网址或除了创建 OpenLink 对象之外还需要执行其他操作时,请使用此函数。一个界面对象只能设置 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

Action 参数必须指定一个回调函数,该函数返回使用 ActionResponseBuilder.setOpenLink(openLink) 配置的 ActionResponse 对象。

// ...

const action = CardService.newAction().setFunctionName('openLinkCallback');
CardService.newTextButton()
    .setText('Open Link')
    .setOnClickOpenLinkAction(action);

// ...

function openLinkCallback() {
  return CardService.newActionResponseBuilder()
      .setOpenLink(CardService.newOpenLink().setUrl('https://www.google.com'))
      .build();
}

参数

名称类型说明
actionAction用于指定点击相应元素时要执行的打开链接操作的对象。

返回

DecoratedText - 此对象,用于链式调用。


设置在点击对象时要打开的网址。当网址已知且只需打开时,请使用此函数。一个界面对象只能设置 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

参数

名称类型说明
openLinkOpenLink一个 OpenLink 对象,用于描述要打开的网址。

返回

DecoratedText - 此对象,用于链式调用。


setStartIcon(startIcon)

设置要在文本内容之前显示的可选 IconImage

参数

名称类型说明
startIconIconImage要显示的图标。

返回

DecoratedText - 此对象,用于链式调用。


setSwitchControl(switchToSet)

设置显示在内容右侧的 SwitchDecoratedText 只能支持一个按钮或一个开关。

参数

名称类型说明
switchToSetSwitch要添加的开关。

返回

DecoratedText - 此对象,用于链式调用。


setText(text)

设置要用作值的文本。支持基本 HTML 格式。必填。

参数

名称类型说明
textString相应 widget 的文本内容。

返回

DecoratedText - 此对象,用于链式调用。


setTopLabel(text)

设置用作键且显示在文本内容上方的标签文本。

参数

名称类型说明
textString标签文本。

返回

DecoratedText - 此对象,用于链式调用。


setVisibility(visibility)

设置 widget 的可见性。默认值为 `VISIBLE`。

参数

名称类型说明
visibilityVisibility微件的 Visibility

返回

Widget - 用于链式调用的对象。


setWrapText(wrapText)

设置值文本是应显示在单行上还是多行上。

参数

名称类型说明
wrapTextBoolean如果值为 true,则文本会换行并显示在多行中。否则,文本会被截断。

返回

DecoratedText - 此对象,用于链式调用。