Class TextButton

TextButton

带有文本标签的 TextButton。您可以设置背景颜色,并根据需要停用按钮。

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

var textButton = CardService.newTextButton()
    .setText("Open Link")
    .setOpenLink(CardService.newOpenLink()
        .setUrl("https://www.google.com"));

方法

方法返回类型简介
setAltText(altText)TextButton设置按钮的替代文本,以提供无障碍功能。
setAuthorizationAction(action)TextButton设置一项授权操作,该操作会在用户点击对象时打开指向授权流程的网址。
setBackgroundColor(backgroundColor)TextButton设置 TextButtonStyle.FILLED 按钮的背景颜色。
setComposeAction(action, composedEmailType)TextButton设置在用户点击对象时撰写电子邮件草稿的操作。
setDisabled(disabled)TextButton设置是否停用按钮。
setOnClickAction(action)TextButton设置在用户点击对象时执行的操作。
setOnClickOpenLinkAction(action)TextButton设置在用户点击对象时在标签页中打开网址的操作。
setOpenLink(openLink)TextButton设置点击对象时要打开的网址。
setText(text)TextButton设置按钮上显示的文本。
setTextButtonStyle(textButtonStyle)TextButton设置按钮样式。

详细文档

setAltText(altText)

设置按钮的替代文本,以提供无障碍功能。如果未设置,则默认为按钮上显示的文本。

参数

名称类型说明
altTextString要分配给此按钮的替代文本。

弃踢回攻

TextButton - 此对象,用于链接。


setAuthorizationAction(action)

设置一项授权操作,该操作会在用户点击对象时打开指向授权流程的网址。系统随即会在新窗口中打开网址。在用户完成授权流程并返回应用时,该插件会重新加载。

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

// ...

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

参数

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

弃踢回攻

TextButton - 此对象,用于链接。


setBackgroundColor(backgroundColor)

设置 TextButtonStyle.FILLED 按钮的背景颜色。如果 TextButtonStyle.FILLED 按钮未设置,该按钮将使用插件清单中定义的次要颜色。 此方法对于 TextButtonStyle.OUTLINED 按钮是空操作。

参数

名称类型说明
backgroundColorString#rgb 格式的颜色。

弃踢回攻

TextButton - 此对象,用于链接。


setComposeAction(action, composedEmailType)

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

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

// ...

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

// ...

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

参数

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

弃踢回攻

TextButton - 此对象,用于链接。


setDisabled(disabled)

设置是否停用按钮。已停用的按钮显示为灰色,无法点击。

参数

名称类型说明
disabledBoolean停用状态。

弃踢回攻

TextButton - 此对象,用于链接。


setOnClickAction(action)

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

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

// ...

var 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点击此元素时执行的操作。

弃踢回攻

TextButton - 此对象,用于链接。


setOnClickOpenLinkAction(action)

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

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

// ...

var 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用于指定点击此元素时要执行的打开链接操作的对象。

弃踢回攻

TextButton - 此对象,用于链接。


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

参数

名称类型说明
openLinkOpenLink描述要打开的网址的 OpenLink 对象。

弃踢回攻

TextButton - 此对象,用于链接。


setText(text)

设置按钮上显示的文本。

参数

名称类型说明
textString按钮上显示的文字。

弃踢回攻

TextButton - 此对象,用于链接。


setTextButtonStyle(textButtonStyle)

设置按钮样式。如果未设置,则默认为 TextButtonStyle.OUTLINED 按钮。

参数

名称类型说明
textButtonStyleTextButtonStyle按钮样式。

弃踢回攻

TextButton - 此对象,用于链接。