כרטיס
ממשק של כרטיס שמוצג בהודעה ב-Google Chat או בתוסף של Google Workspace.
הכרטיסים תומכים בפריסה מוגדרת, ברכיבים אינטראקטיביים בממשק המשתמש כמו לחצנים ובמדיה עשירה כמו תמונות. אפשר להשתמש בכרטיסים כדי להציג מידע מפורט, לאסוף מידע ממשתמשים ולהדריך את המשתמשים איך לבצע את הפעולה הבאה.
תוכלו להיעזר במסמכים הבאים כדי ללמוד איך יוצרים כרטיסים:
- למידע על אפליקציות Google Chat, תוכלו לקרוא את המאמר עיצוב ממשקי משתמש דינמיים, אינטראקטיביים ועקביים באמצעות כרטיסים.
- לתוספים ל-Google Workspace אפשר לקרוא את המאמר ממשקים מבוססי כרטיסים.
דוגמה: הודעה בכרטיס לאפליקציית Google Chat
כדי ליצור את ההודעה עם הכרטיס לדוגמה ב-Google Chat, צריך להשתמש בקובץ ה-JSON הבא:
{
"cardsV2": [
{
"cardId": "unique-card-id",
"card": {
"header": {
"title": "Sasha",
"subtitle": "Software Engineer",
"imageUrl":
"https://developers.google.com/chat/images/quickstart-app-avatar.png",
"imageType": "CIRCLE",
"imageAltText": "Avatar for Sasha",
},
"sections": [
{
"header": "Contact Info",
"collapsible": true,
"uncollapsibleWidgetsCount": 1,
"widgets": [
{
"decoratedText": {
"startIcon": {
"knownIcon": "EMAIL",
},
"text": "sasha@example.com",
}
},
{
"decoratedText": {
"startIcon": {
"knownIcon": "PERSON",
},
"text": "<font color=\"#80e27e\">Online</font>",
},
},
{
"decoratedText": {
"startIcon": {
"knownIcon": "PHONE",
},
"text": "+1 (555) 555-1234",
}
},
{
"buttonList": {
"buttons": [
{
"text": "Share",
"onClick": {
"openLink": {
"url": "https://example.com/share",
}
}
},
{
"text": "Edit",
"onClick": {
"action": {
"function": "goToView",
"parameters": [
{
"key": "viewType",
"value": "EDIT",
}
],
}
}
},
],
}
},
],
},
],
},
}
],
}
ייצוג JSON |
---|
{ "header": { object ( |
שדות | |
---|---|
header
|
הכותרת של הכרטיס. כותרת כוללת בדרך כלל תמונה מובילה וכותרת. כותרות מופיעות תמיד בחלק העליון של כרטיס. |
sections[]
|
מכיל אוסף של ווידג'טים. לכל קטע יש כותרת אופציונלית משלו. המקטעים מופרדים באופן חזותי באמצעות קו מפריד. דוגמאות לאפליקציות של Google Chat זמינות בקטע 'כרטיסים'. |
sectionDividerStyle
|
סגנון ההפרדה בין הקטעים. |
cardActions[]
|
הפעולות בכרטיס. הפעולות מתווספות לתפריט סרגל הכלים של הכרטיס.
בכרטיסים של אפליקציות Chat אין סרגל כלים, ולכן
אפליקציות Chat לא תומכות ב-
לדוגמה, קובץ ה-JSON הבא בונה תפריט פעולות בכרטיס עם האפשרויות
|
name
|
שם הכרטיס. משמש כמזהה כרטיס בניווט בכרטיסים. אפליקציות צ'אט לא תומכות בניווט בכרטיסים, ולכן הן מתעלמות מהשדה הזה. |
fixedFooter
|
הכותרת התחתונה הקבועה שמוצגת בתחתית הכרטיס הזה.
הגדרת
ההגדרה הזו נתמכת בתוספים ל-Google Workspace ובאפליקציות צ'אט. באפליקציות Chat אפשר להשתמש בכותרות תחתונות קבועות בתיבות הדו-שיח, אבל לא בהודעות בכרטיס. |
displayStyle
|
בתוספים של Google Workspace, מגדירה את מאפייני התצוגה של
ההגדרה הזו לא נתמכת באפליקציות צ'אט. |
peekCardHeader
|
בהצגת תוכן לפי הקשר, הכותרת של כרטיס ההצצה משמשת כ-placeholder שמאפשר למשתמשים לנווט קדימה בין הכרטיסים בדף הבית לבין הכרטיסים לפי הקשר. ההגדרה הזו לא נתמכת באפליקציות צ'אט. |
כותרת הכרטיס
מייצג כותרת של כרטיס. דוגמאות רלוונטיות לאפליקציות של Google Chat: כותרת הכרטיס.
ייצוג JSON |
---|
{
"title": string,
"subtitle": string,
"imageType": enum (
|
שדות | |
---|---|
title
|
חובה. הכותרת של כותרת הכרטיס. לכותרת יש גובה קבוע: אם צוינו כותרת וכותרת משנה, כל אחת מהן תופסת שורה אחת. אם צוינה רק כותרת, היא תחול על שתי השורות. |
subtitle
|
כותרת המשנה של כותרת הכרטיס. אם צוין, יופיע בשורה נפרדת מתחת לערך |
imageType
|
הצורה המשמשת לחיתוך התמונה. |
imageUrl
|
כתובת ה-URL מסוג HTTPS של התמונה בכותרת הכרטיס. |
imageAltText
|
הטקסט החלופי של התמונה הזו המשמש לנגישות. |
סוג תמונה
הצורה המשמשת לחיתוך התמונה.
טיפוסים בני מנייה (enum) | |
---|---|
SQUARE
|
ערך ברירת המחדל. החלת מסכה ריבועית על התמונה. לדוגמה, תמונה בגודל 4x3 הופכת לגודל 3x3. |
CIRCLE
|
מוסיפים לתמונה מסכה מעוגלת. לדוגמה, תמונה בגודל 4x3 הופכת לעיגול בקוטר 3. |
קטע
קטע מכיל אוסף של ווידג'טים שעברו רינדור אנכי לפי הסדר שבו הם צוינו.
ייצוג JSON |
---|
{
"header": string,
"widgets": [
{
object (
|
שדות | |
---|---|
header
|
טקסט שמופיע בחלק העליון של קטע הטקסט. יש תמיכה בטקסט פשוט בפורמט HTML. למידע נוסף על עיצוב טקסט, תוכלו לקרוא את המאמר עיצוב טקסט באפליקציות של Google Chat ועיצוב טקסט בתוספים של Google Workspace. |
widgets[]
|
כל הווידג'טים שבקטע. חייב להכיל ווידג'ט אחד לפחות. |
collapsible
|
שדה זה מציין אם ניתן לכווץ את הקטע הזה. בקטעים שניתנים לכיווץ, חלק מהווידג'טים או כולם מוסתרים, אבל המשתמשים יכולים להרחיב את הקטע כדי לחשוף את הווידג'טים המוסתרים על ידי לחיצה על Show more. כדי להסתיר את הווידג'טים, המשתמשים לוחצים על הצגת פחות.
כדי לקבוע אילו ווידג'טים מוסתרים, צריך לציין
|
uncollapsibleWidgetsCount
|
מספר הווידג'טים שאינם ניתנים לכיווץ, שנשארים גלויים גם כאשר קטע מכווץ.
לדוגמה, אם קטע מכיל חמישה ווידג'טים והמאפיין |
ווידג'ט
כל כרטיס מורכב מווידג'טים.
ווידג'ט הוא אובייקט מורכב שיכול לייצג טקסט, תמונות, לחצנים וסוגי אובייקטים אחרים.
ייצוג JSON |
---|
{ "horizontalAlignment": enum ( |
שדות | |
---|---|
horizontalAlignment
|
קובעת אם הווידג'טים מיושרים לשמאל, לימין או למרכז של עמודה. |
שדה איחוד
data . ווידג'ט יכול לכלול רק אחד מהפריטים הבאים. אפשר להשתמש בכמה שדות של ווידג'טים כדי להציג יותר פריטים.
data
יכול להיות רק אחת מהאפשרויות הבאות:
|
|
textParagraph
|
הצגת פסקה של טקסט. יש תמיכה בטקסט פשוט בפורמט HTML. למידע נוסף על עיצוב טקסט, תוכלו לקרוא את המאמר עיצוב טקסט באפליקציות של Google Chat ועיצוב טקסט בתוספים של Google Workspace. לדוגמה, קובץ ה-JSON הבא יוצר טקסט מודגש:
|
image
|
מוצגת תמונה. לדוגמה, קובץ ה-JSON הבא יוצר תמונה עם טקסט חלופי:
|
decoratedText
|
מוצג פריט טקסט מעוצב. לדוגמה, קובץ ה-JSON הבא יוצר ווידג'ט טקסט מעוצב שמציג כתובת אימייל:
|
buttonList
|
רשימת לחצנים. לדוגמה, קובץ ה-JSON הבא יוצר שני לחצנים. הלחצן הראשון הוא לחצן טקסט כחול והשני הוא לחצן תמונה שפותח קישור:
|
textInput
|
הצגת תיבת טקסט שהמשתמשים יכולים להקליד בה. לדוגמה, קובץ ה-JSON הבא יוצר קלט טקסט לכתובת אימייל:
דוגמה נוספת: קובץ ה-JSON הבא יוצר קלט טקסט לשפת תכנות עם הצעות סטטיות:
|
selectionInput
|
מוצגת פקד בחירה שמאפשר למשתמשים לבחור פריטים. פקדי הבחירה יכולים להיות תיבות סימון, לחצני בחירה, מתגים או תפריטים נפתחים. לדוגמה, קובץ ה-JSON הבא יוצר תפריט נפתח שמאפשר למשתמשים לבחור גודל:
|
dateTimePicker
|
הצגת ווידג'ט שמאפשר למשתמשים להזין תאריך, שעה או תאריך ושעה. לדוגמה, קובץ ה-JSON הבא יוצר בוחר תאריך ושעה כדי לקבוע פגישה:
|
divider
|
הצגת קו מפריד של קו אופקי בין ווידג'טים. לדוגמה, קובץ ה-JSON הבא יוצר מחיצה:
|
grid
|
הצגת רשת עם אוסף של פריטים. רשת תומכת בכל מספר של עמודות ופריטים. מספר השורות נקבע לפי הגבול העליון של מספר הפריטים חלקי מספר העמודות. רשת שמכילה 10 פריטים ו-2 עמודות מכילה 5 שורות. רשת שמכילה 11 פריטים ו-2 עמודות מכילה 6 שורות. לדוגמה, קובץ ה-JSON הבא יוצר רשת של שתי עמודות עם פריט אחד:
|
columns
|
הצגת עד 2 עמודות.
כדי לכלול יותר מ-2 עמודות או כדי להשתמש בשורות, צריך להשתמש בווידג'ט לדוגמה, קובץ ה-JSON הבא יוצר 2 עמודות שכל אחת מהן מכילה פסקאות טקסט:
|
פיסת טקסט
פסקה של טקסט שתומכת בעיצוב. במאמר פסקת טקסט תוכלו לראות דוגמאות באפליקציות של Google Chat. למידע נוסף על עיצוב טקסט, תוכלו לקרוא את המאמר עיצוב טקסט באפליקציות של Google Chat ועיצוב טקסט בתוספים של Google Workspace.
ייצוג JSON |
---|
{ "text": string } |
שדות | |
---|---|
text
|
הטקסט שמופיע בווידג'ט. |
תמונה
תמונה שצוינה באמצעות כתובת URL ויכולה לבצע פעולה onClick
. לדוגמה, אפשר לעיין במאמר תמונה.
ייצוג JSON |
---|
{
"imageUrl": string,
"onClick": {
object (
|
שדות | |
---|---|
imageUrl
|
כתובת ה-URL מסוג HTTPS שמארחת את התמונה. לדוגמה:
|
onClick
|
כשמשתמש לוחץ על התמונה, הקליק מפעיל את הפעולה הזו. |
altText
|
הטקסט החלופי של התמונה הזו המשמש לנגישות. |
בלחיצה
מייצגת איך להגיב כשמשתמשים לוחצים על רכיב אינטראקטיבי בכרטיס, כמו לחצן.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
שדה איחוד
|
|
action
|
אם צוין, פעולה מסוימת תופעל על ידי |
openLink
|
אם צוין, |
openDynamicLinkAction
|
תוסף מפעיל את הפעולה הזו כשצריך לפתוח קישור עבור הפעולה. הפעולה הזו שונה מ-
|
card
|
אם צוין כרטיס חדש, הוא יידחף לערימת הכרטיסים לאחר לחיצה. יש תמיכה בתוספים של Google Workspace, אבל לא באפליקציות של Google Chat. |
פעולה
פעולה שמתארת את ההתנהגות בזמן שליחת הטופס. לדוגמה, אפשר להפעיל סקריפט של Apps Script כדי לטפל בטופס. אם הפעולה מופעלת, ערכי הטופס נשלחים לשרת.
ייצוג JSON |
---|
{ "function": string, "parameters": [ { object ( |
שדות | |
---|---|
function
|
פונקציה מותאמת אישית להפעלה כשמשתמש לוחץ על הרכיב שמכיל את הרכיב או כאשר הוא מופעל בכל זמן. לדוגמה, אפשר לקרוא את המאמר יצירת כרטיסים אינטראקטיביים. |
parameters[]
|
רשימת פרמטרים של פעולות. |
loadIndicator
|
מציין את אינדיקטור הטעינה שמוצג לפעולה במהלך הקריאה לפעולה. |
persistValues
|
שדה זה מציין אם ערכי הטופס נשארים לאחר ביצוע הפעולה. ערך ברירת המחדל הוא
אם הערך הוא
אם הערך הוא |
interaction
|
אופציונלי. חובה כשפותחים תיבת דו-שיח. מה לעשות בתגובה לאינטראקציה עם משתמש, למשל לחיצה של משתמש על לחצן בהודעה בכרטיס.
אם לא צוין אחרת, האפליקציה מגיבה באמצעות הפעלת
אם מציינים
יש תמיכה באפליקציות Chat, אבל לא בתוספים של Google Workspace. אם צוין עבור תוסף, הכרטיס כולו יוסר ולא יוצג דבר ללקוח. |
פרמטר פעולה
רשימת הפרמטרים של המחרוזת שיש לספק כששיטת הפעולה מופעלת. לדוגמה, אפשר להשתמש בשלושה לחצני 'נודניק': 'לטיפול בהמשך' עכשיו, 'לטיפול בהמשך' ביום אחד או 'לטיפול בהמשך' בשבוע הבא. אפשר להשתמש בערך action method = snooze()
, שמעבירים את סוג ההשהיה ואת משך ההשהיה ברשימת הפרמטרים של המחרוזת.
למידע נוסף:
CommonEventObject
.
ייצוג JSON |
---|
{ "key": string, "value": string } |
שדות | |
---|---|
key
|
שם הפרמטר עבור סקריפט הפעולה. |
value
|
ערך הפרמטר. |
אינדיקטור לטעינה
מציין את אינדיקטור הטעינה שמוצג לפעולה במהלך הקריאה לפעולה.
טיפוסים בני מנייה (enum) | |
---|---|
SPINNER
|
מציג טבעת שמציינת שהתוכן נטען. |
NONE
|
לא מוצג דבר. |
אינטראקציה
אופציונלי. חובה כשפותחים תיבת דו-שיח.
מה לעשות בתגובה לאינטראקציה עם משתמש, למשל לחיצה של משתמש על לחצן בהודעה בכרטיס.
אם לא צוין אחרת, האפליקציה מגיבה באמצעות הפעלת
action
— כמו פתיחת קישור או הפעלת פונקציה – כרגיל.
אם מציינים
interaction
, האפליקציה יכולה להגיב בדרכים אינטראקטיביות מיוחדות. לדוגמה, אם מגדירים את interaction
לערך OPEN_DIALOG
, האפליקציה יכולה לפתוח תיבת דו-שיח.
אם המדיניות מוגדרת, לא יוצג אינדיקטור לטעינה.
יש תמיכה באפליקציות Chat, אבל לא בתוספים של Google Workspace. אם צוין עבור תוסף, הכרטיס כולו יוסר ולא יוצג דבר ללקוח.
טיפוסים בני מנייה (enum) | |
---|---|
INTERACTION_UNSPECIFIED
|
ערך ברירת המחדל. הערך action פועל כרגיל.
|
OPEN_DIALOG
|
פתיחת תיבת דו-שיח – ממשק מבוסס-חלון עם כרטיסיות שמשמשות אפליקציות צ'אט לאינטראקציה עם משתמשים. התכונה נתמכת רק באפליקציות Chat בתגובה לקליקים על הודעות בכרטיס. הפעולה הזאת לא נתמכת בתוספים של Google Workspace. אם צוין עבור תוסף, הכרטיס כולו יוסר ולא יוצג דבר ללקוח. |
OpenLink
מייצג אירוע
onClick
שפותח היפר-קישור.
ייצוג JSON |
---|
{ "url": string, "openAs": enum ( |
שדות | |
---|---|
url
|
כתובת ה-URL לפתיחה. |
openAs
|
איך פותחים קישור. ההגדרה הזו לא נתמכת באפליקציות צ'אט. |
onClose
|
האם הלקוח שוכח על קישור אחרי שהוא פותח אותו, או שהוא צופה בו עד שהחלון נסגר. ההגדרה הזו לא נתמכת באפליקציות צ'אט. |
OpenAs
כשפעולה OnClick
פותחת קישור, הלקוח יכול לפתוח אותו כחלון בגודל מלא (אם זו המסגרת שבה משתמש הלקוח) או כשכבת-על (כמו חלון קופץ). ההטמעה תלויה ביכולות של פלטפורמת הלקוח, ויכול להיות שהמערכת תתעלם מהערך שנבחר אם הלקוח לא תומך בה.
FULL_SIZE
נתמך על ידי כל הלקוחות.
יש תמיכה בתוספים של Google Workspace, אבל לא באפליקציות של Google Chat.
טיפוסים בני מנייה (enum) | |
---|---|
FULL_SIZE
|
הקישור נפתח כחלון בגודל מלא (אם זו המסגרת שבה משתמש הלקוח). |
OVERLAY
|
הקישור נפתח כשכבת-על, כמו חלון קופץ. |
בסגירה
מה הלקוח עושה כשסוגרים קישור שנפתח על ידי פעולה OnClick
.
ההטמעה תלויה ביכולות של פלטפורמת הלקוח. לדוגמה, דפדפן אינטרנט עשוי לפתוח קישור בחלון קופץ עם handler של
OnClose
.
אם הוגדרו גם רכיבי handler של
OnOpen
וגם
OnClose
ופלטפורמת הלקוח לא יכולה לתמוך בשני הערכים,
OnClose
יקבל עדיפות.
יש תמיכה בתוספים של Google Workspace, אבל לא באפליקציות של Google Chat.
טיפוסים בני מנייה (enum) | |
---|---|
NOTHING
|
ערך ברירת המחדל. הכרטיס לא נטען מחדש, לא קורה דבר. |
RELOAD
|
טעינת הכרטיס מחדש אחרי שחלון הצאצא נסגר.
אם משתמשים בו בשילוב עם
|
טקסט מעוצב
ווידג'ט שמציג טקסט עם קישוטים אופציונליים, כמו תווית מעל או מתחת לטקסט, סמל לפני הטקסט, ווידג'ט בחירה או לחצן אחרי הטקסט. דוגמה: טקסט מקושט באפליקציות של Google Chat.
ייצוג JSON |
---|
{ "icon": { object ( |
שדות | |
---|---|
icon
|
הוצא משימוש לטובת
|
startIcon
|
הסמל שמוצג לפני הטקסט. |
topLabel
|
הטקסט שמופיע מעל |
text
|
חובה. הטקסט הראשי. תומך בעיצוב פשוט. למידע נוסף על עיצוב טקסט, תוכלו לקרוא את המאמר עיצוב טקסט באפליקציות של Google Chat ועיצוב טקסט בתוספים של Google Workspace. |
wrapText
|
ההגדרה 'גלישת טקסט'. אם הערך הוא
ההגדרה חלה רק על
|
bottomLabel
|
הטקסט שמופיע מתחת
ל- |
onClick
|
פעולה זו מופעלת כשמשתמשים לוחצים על
|
שדה איחוד
control . לחצן, מתג, תיבת סימון או תמונה שמופיעים משמאל לטקסט בווידג'ט
decoratedText .
control
יכול להיות רק אחת מהאפשרויות הבאות:
|
|
button
|
לחצן שמשתמש יכול ללחוץ עליו כדי להפעיל פעולה. |
switchControl
|
ווידג'ט מתג שמשתמש יכול ללחוץ עליו כדי לשנות את המצב שלו ולהפעיל פעולה. |
endIcon
|
סמל שמוצג אחרי הטקסט. יש תמיכה בסמלים מובְנים ובסמלים מותאמים אישית. |
סמל
סמל שמוצג בווידג'ט בכרטיס. דוגמאות לאפליקציות של Google Chat: סמל.
יש תמיכה בסמלים מובְנים ובסמלים מותאמים אישית.
ייצוג JSON |
---|
{ "altText": string, "imageType": enum ( |
שדות | |
---|---|
altText
|
אופציונלי. תיאור של הסמל המשמש לנגישות. אם לא צוין, ערך ברירת המחדל
אם הסמל מוגדר בתוך
|
imageType
|
סגנון החיתוך שהוחל על התמונה. במקרים מסוימים, חיתוך של
|
שדה איחוד
icons . הסמל שמוצג בווידג'ט שעל הכרטיס.
icons
יכול להיות רק אחת מהאפשרויות הבאות:
|
|
knownIcon
|
להציג את אחד מהסמלים המובנים של Google Workspace.
לדוגמה, כדי להציג סמל מטוס, צריך לציין
הרשימה המלאה של הסמלים הנתמכים זמינה במאמר סמלים מובנים. |
iconUrl
|
להציג סמל מותאם אישית שמתארח בכתובת URL מסוג HTTPS. לדוגמה:
סוגי הקבצים הנתמכים הם |
לחצן
לחצן עם טקסט, סמל או טקסט וסמל, שהמשתמשים יכולים ללחוץ עליהם. דוגמאות לאפליקציות של Google Chat: רשימת לחצנים.
כדי להפוך תמונה ללחצן קליקבילי, צריך לציין
(ולא Image
) ולהגדיר את הפעולה ImageComponent
onClick
.
ייצוג JSON |
---|
{ "text": string, "icon": { object ( |
שדות | |
---|---|
text
|
הטקסט שמוצג בתוך הלחצן. |
icon
|
תמונת הסמל. אם
|
color
|
אם המדיניות מוגדרת, הלחצן ימולא בצבע רקע אחיד וצבע הגופן ישתנה כדי לשמור על הניגודיות לצבע הרקע. לדוגמה, הגדרה של רקע כחול תגרום ככל הנראה לטקסט לבן. אם המדיניות לא מוגדרת, רקע התמונה יהיה לבן וצבע הגופן יהיה כחול.
באדום, בירוק ובכחול, הערך של כל שדה הוא מספר
אפשר להגדיר את
עבור
לדוגמה, הצבע הבא מייצג אדום חצי שקוף:
|
onClick
|
חובה. הפעולה שיש לבצע כשמשתמש לוחץ על הלחצן, כמו פתיחת היפר-קישור או הפעלת פונקציה מותאמת אישית. |
disabled
|
אם
|
altText
|
הטקסט החלופי המשמש לנגישות. צריך להגדיר טקסט תיאורי שמאפשר למשתמשים לדעת מה הלחצן עושה. לדוגמה, אם לחצן פותח היפר-קישור, אפשר לכתוב: 'נפתח כרטיסייה חדשה בדפדפן ומנווט אל המסמכים למפתחים של Google Chat בכתובת https://developers.google.com/chat'. |
צבע
צבע במרחב הצבעים RGBA. הייצוג הזה נועד לפשט את תהליך ההמרה אל ייצוגי צבע בשפות שונות על פני קומפקטיות. לדוגמה, אפשר לספק באופן טריוויאלי את השדות של הייצוג הזה לבנאי
java.awt.Color
ב-Java. ניתן גם לספק אותם באופן טריוויאלי לשיטת +colorWithRed:green:blue:alpha
של UIColor ב-iOS. ועם מעט עבודה, אפשר לעצב אותם בקלות למחרוזת
rgba()
CSS
ב-JavaScript.
דף העזר הזה לא כולל מידע על מרחב הצבעים המוחלט שצריך להשתמש בו כדי לפרש את ערך ה-RGB – לדוגמה, sRGB, Adobe RGB, DCI-P3 ו-BT.2020. כברירת מחדל, אפליקציות צריכות להניח את מרחב הצבעים sRGB.
במקרים שבהם צריך לקבוע שוויון צבעים, יש להתייחס להטמעות, אלא אם צוין אחרת, לשני צבעים כשווי ערך, אם כל ערכי הצבע האדום, הירוק, הכחול והאלפא נבדלים זה מזה ב-1e-5
לכל היותר.
דוגמה (Java):
import com.google.type.Color;
// ...
public static java.awt.Color fromProto(Color protocolor) {
float alpha = protocolor.hasAlpha()
? protocolor.getAlpha().getValue()
: 1.0;
return new java.awt.Color(
protocolor.getRed(),
protocolor.getGreen(),
protocolor.getBlue(),
alpha);
}
public static Color toProto(java.awt.Color color) {
float red = (float) color.getRed();
float green = (float) color.getGreen();
float blue = (float) color.getBlue();
float denominator = 255.0;
Color.Builder resultBuilder =
Color
.newBuilder()
.setRed(red / denominator)
.setGreen(green / denominator)
.setBlue(blue / denominator);
int alpha = color.getAlpha();
if (alpha != 255) {
result.setAlpha(
FloatValue
.newBuilder()
.setValue(((float) alpha) / denominator)
.build());
}
return resultBuilder.build();
}
// ...
לדוגמה (iOS / Obj-C):
// ...
static UIColor* fromProto(Color* protocolor) {
float red = [protocolor red];
float green = [protocolor green];
float blue = [protocolor blue];
FloatValue* alpha_wrapper = [protocolor alpha];
float alpha = 1.0;
if (alpha_wrapper != nil) {
alpha = [alpha_wrapper value];
}
return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
}
static Color* toProto(UIColor* color) {
CGFloat red, green, blue, alpha;
if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
return nil;
}
Color* result = [[Color alloc] init];
[result setRed:red];
[result setGreen:green];
[result setBlue:blue];
if (alpha <= 0.9999) {
[result setAlpha:floatWrapperWithValue(alpha)];
}
[result autorelease];
return result;
}
// ...
דוגמה (JavaScript):
// ...
var protoToCssColor = function(rgb_color) {
var redFrac = rgb_color.red || 0.0;
var greenFrac = rgb_color.green || 0.0;
var blueFrac = rgb_color.blue || 0.0;
var red = Math.floor(redFrac * 255);
var green = Math.floor(greenFrac * 255);
var blue = Math.floor(blueFrac * 255);
if (!('alpha' in rgb_color)) {
return rgbToCssColor(red, green, blue);
}
var alphaFrac = rgb_color.alpha.value || 0.0;
var rgbParams = [red, green, blue].join(',');
return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};
var rgbToCssColor = function(red, green, blue) {
var rgbNumber = new Number((red << 16) | (green << 8) | blue);
var hexString = rgbNumber.toString(16);
var missingZeros = 6 - hexString.length;
var resultBuilder = ['#'];
for (var i = 0; i < missingZeros; i++) {
resultBuilder.push('0');
}
resultBuilder.push(hexString);
return resultBuilder.join('');
};
// ...
ייצוג JSON |
---|
{ "red": number, "green": number, "blue": number, "alpha": number } |
שדות | |
---|---|
red
|
כמות הצבע האדום בצבע כערך במרווח [0, 1]. |
green
|
כמות הצבע הירוק כערך במרווח [0, 1]. |
blue
|
כמות הצבע הכחול בצבע כערך במרווח [0, 1]. |
alpha
|
החלק של הצבע שיש להחיל על הפיקסל. כלומר, צבע הפיקסל הסופי מוגדר באמצעות המשוואה:
המשמעות היא שהערך 1.0 מייצג צבע אחיד, וערך של 0.0 מייצג צבע שקוף לחלוטין. נעשה שימוש בהודעת wrapper במקום בסקלרי צף פשוט, כדי שאפשר יהיה להבחין בין ערך ברירת מחדל לבין הערך שלא מוגדר. אם לא צוין ערך, אובייקט הצבע הזה מעובד כצבע מלא (למשל, כאילו ניתן היה להקצות ערך אלפא באופן מפורש כ-1.0). |
SwitchControl
מתג בסגנון החלפת מצב או תיבת סימון בתוך ווידג'ט
decoratedText
.
התכונה נתמכת רק בווידג'ט
decoratedText
.
ייצוג JSON |
---|
{ "name": string, "value": string, "selected": boolean, "onChangeAction": { object ( |
שדות | |
---|---|
name
|
השם שבו מזוהה הווידג'ט של ההחלפה באירוע של קלט טופס. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
value
|
הערך שהוזן על ידי משתמש, שהוחזר כחלק מאירוע של קלט טופס. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
selected
|
כאשר
|
onChangeAction
|
הפעולה שיש לבצע כשמצב המתג משתנה, למשל איזו פונקציה להפעיל. |
controlType
|
איך המתג מופיע בממשק המשתמש. |
סוג בקרה
איך המתג מופיע בממשק המשתמש.
טיפוסים בני מנייה (enum) | |
---|---|
SWITCH
|
מתג בסגנון החלפת מצב. |
CHECKBOX
|
הוצא משימוש לטובת
CHECK_BOX .
|
CHECK_BOX
|
תיבת סימון. |
רשימת לחצנים
רשימה של לחצנים פרוסים אופקית. דוגמאות לאפליקציות של Google Chat: רשימת לחצנים.
ייצוג JSON |
---|
{
"buttons": [
{
object (
|
שדות | |
---|---|
buttons[]
|
מערך של לחצנים. |
קלט טקסט
שדה שבו המשתמשים יכולים להזין טקסט. תומך בהצעות ובפעולות שינוי. דוגמאות רלוונטיות לאפליקציות של Google Chat: קלט טקסט.
אפליקציות צ'אט מקבלות את הערך של הטקסט שהוזן ויכולות לעבד אותו במהלך אירועי קלט של טפסים. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס.
אם אתם צריכים לאסוף נתונים לא מוגדרים או מופשטים ממשתמשים, כדאי להשתמש בקלט טקסט. כדי לאסוף נתונים מוגדרים או ממוספרים ממשתמשים, צריך להשתמש בווידג'ט
SelectionInput
.
ייצוג JSON |
---|
{ "name": string, "label": string, "hintText": string, "value": string, "type": enum ( |
שדות | |
---|---|
name
|
השם שבו קלט הטקסט מזוהה באירוע של קלט טופס. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
label
|
הטקסט שמופיע מעל לשדה להזנת הטקסט בממשק המשתמש.
צריך לציין טקסט שעוזר למשתמש להזין את המידע הנדרש לאפליקציה. לדוגמה, אם רוצים לבקש שם של מישהו, אבל צריך לציין את שם המשפחה שלו, צריך לכתוב
חובה אם לא צוין
|
hintText
|
טקסט שמופיע מתחת לשדה הזנת הטקסט. הטקסט הזה מיועד לעזור למשתמשים ומבקשים מהם להזין ערך מסוים. הטקסט הזה תמיד גלוי.
חובה אם לא צוין
|
value
|
הערך שהוזן על ידי משתמש, שהוחזר כחלק מאירוע של קלט טופס. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
type
|
איך מופיע שדה להזנת טקסט בממשק המשתמש. לדוגמה, אם השדה הוא שורה אחת או כמה שורות. |
onChangeAction
|
מה לעשות במקרה של שינוי בשדה של קלט הטקסט. לדוגמה, משתמש שמוסיף שדה או מוחק טקסט. לדוגמה, אפשר להריץ פונקציה בהתאמה אישית או לפתוח תיבת דו-שיח ב-Google Chat. |
initialSuggestions
|
הצעות לערכים שהמשתמשים יכולים להזין. הערכים האלה מופיעים כשמשתמשים לוחצים בתוך השדה של קלט הטקסט. בזמן שהמשתמשים מקלידים, הערכים המוצעים מסוננים באופן דינמי כדי להתאים למה שהמשתמשים הקלידו.
לדוגמה, שדה להזנת טקסט לשפת התכנות עשוי להציע Java, JavaScript, Python ו-C++. כשמשתמשים מתחילים להקליד
ההצעות לערכים עוזרות להנחות את המשתמשים להזין ערכים שיהיו הגיוניים לאפליקציה שלכם. כשמדובר ב-JavaScript, חלק מהמשתמשים עשויים להזין
כשמוגדרת,
|
autoCompleteAction
|
אופציונלי. לציין איזו פעולה לבצע כשמוצגות הצעות למשתמשים שמקיימים אינטראקציה עם השדה של קלט הטקסט.
אם לא צוין אחרת, ההצעות מוגדרות על ידי
אם צוין, האפליקציה תנקוט את הפעולה שצוינה כאן, כמו הפעלת פונקציה מותאמת אישית. יש תמיכה בתוספים של Google Workspace, אבל לא באפליקציות של Google Chat. |
placeholderText
|
טקסט שמופיע בשדה של קלט הטקסט כשהשדה ריק. השתמשו בטקסט הזה כדי לבקש מהמשתמשים להזין ערך. לדוגמה:
יש תמיכה באפליקציות של Google Chat, אבל לא בתוספים של Google Workspace. |
סוג
איך מופיע שדה להזנת טקסט בממשק המשתמש. לדוגמה, אם מדובר בשדה קלט של שורה יחידה או בקלט מרובה שורות.
אם
initialSuggestions
צוין,
type
הוא תמיד
SINGLE_LINE
, גם אם מוגדר
MULTIPLE_LINE
.
טיפוסים בני מנייה (enum) | |
---|---|
SINGLE_LINE
|
בשדה להזנת טקסט יש גובה קבוע של שורה אחת. |
MULTIPLE_LINE
|
בשדה להזנת טקסט יש גובה קבוע של כמה שורות. |
הצעות
הצעות לערכים שהמשתמשים יכולים להזין. הערכים האלה מופיעים כשמשתמשים לוחצים בתוך השדה של קלט הטקסט. בזמן שהמשתמשים מקלידים, הערכים המוצעים מסוננים באופן דינמי כדי להתאים למה שהמשתמשים הקלידו.
לדוגמה, שדה להזנת טקסט לשפת התכנות עשוי להציע Java, JavaScript, Python ו-C++. כשמשתמשים מתחילים להקליד
Jav
, רשימת המסננים להצגת
Java
ו-JavaScript
.
ההצעות לערכים עוזרות להנחות את המשתמשים להזין ערכים שיהיו הגיוניים לאפליקציה שלכם. כשמדובר ב-JavaScript, חלק מהמשתמשים עשויים להזין
javascript
ואחרים
java script
. הצעה של
JavaScript
יכולה לעזור לכם לקבוע את אופן האינטראקציה של המשתמשים עם האפליקציה.
כשמוגדרת,
TextInput.type
היא תמיד
SINGLE_LINE
, גם אם היא מוגדרת
MULTIPLE_LINE
.
ייצוג JSON |
---|
{
"items": [
{
object (
|
שדות | |
---|---|
items[]
|
רשימת הצעות המשמשות להמלצות של השלמה אוטומטית בשדות של קלט טקסט. |
פריט הצעה
הצעה אחת לערך שמשתמשים יכולים להזין בשדה של קלט טקסט.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
שדה איחוד
|
|
text
|
הערך של קלט מוצע בשדה של קלט טקסט. הערך הזה זהה למה שהמשתמשים מזינים בעצמם. |
קלט הבחירה
ווידג'ט שיוצר פריט אחד או יותר בממשק המשתמש, שהמשתמשים יכולים לבחור. לדוגמה, תפריט נפתח או תיבות סימון. אתם יכולים להשתמש בווידג'ט הזה כדי לאסוף נתונים שניתן לחזות או לספור אותם. דוגמאות רלוונטיות לאפליקציות של Google Chat: קלט הבחירה.
אפליקציות צ'אט יכולות לעבד את הערך של פריטים שהמשתמשים בוחרים או מזינים. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס.
כדי לאסוף נתונים לא מוגדרים או מופשטים ממשתמשים, אפשר להשתמש בווידג'ט
TextInput
.
ייצוג JSON |
---|
{ "name": string, "label": string, "type": enum ( |
שדות | |
---|---|
name
|
השם שמשמש לזיהוי קלט הבחירה באירוע של קלט טופס. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
label
|
הטקסט שמופיע מעל לשדה להזנת קלט הבחירה בממשק המשתמש. צריך לציין טקסט שעוזר למשתמש להזין את המידע הנדרש לאפליקציה. לדוגמה, אם משתמשים בוחרים את הדחיפות של כרטיס עבודה מהתפריט הנפתח, התווית יכולה להיות 'דחיפות' או 'בחירת דחיפות'. |
type
|
סוג הפריטים שמוצגים למשתמשים בווידג'ט
|
items[]
|
מערך של פריטים שאפשר לבחור. לדוגמה, מערך של לחצני בחירה או תיבות סימון. תמיכה ב-100 פריטים לכל היותר. |
onChangeAction
|
אם צוין אחרת, הטופס יישלח כשהבחירה תשתנה. אם לא צוין לחצן, עליך לציין לחצן נפרד לשליחת הטופס. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
multiSelectMaxSelectedItems
|
בתפריטים של בחירה מרובה, זהו מספר הפריטים המקסימלי שמשתמש יכול לבחור. הערך המינימלי הוא פריט אחד. אם לא הוגדר, יש להגדיר 3 פריטים.
|
multiSelectMinQueryLength
|
בתפריטים של בחירה מרובה, מספר תווי הטקסט שמשתמש מזין לפני השלמה אוטומטית של שאילתות באפליקציית Chat, ומציג הצעות לפריטים בכרטיס. אם לא צוין, יש להגדיר ל-0 תווים במקורות נתונים סטטיים ול-3 תווים במקורות נתונים חיצוניים.
|
שדה איחוד
multi_select_data_source . רק אפליקציות צ'אט. בתפריט של בחירה מרובה, זהו הסוג של מקור הנתונים.
multi_select_data_source
יכול להיות רק אחת מהאפשרויות הבאות:
|
|
externalDataSource
|
מקור נתונים חיצוני, כמו בסיס נתונים יחסי.
|
platformDataSource
|
מקור נתונים מאפליקציה לאירוח של Google Workspace.
|
סוג הבחירה
פורמט הפריטים שהמשתמשים יכולים לבחור. האפשרויות השונות תומכות בסוגים שונים של אינטראקציות. לדוגמה, משתמשים יכולים לסמן כמה תיבות סימון, אבל יכולים לבחור רק פריט אחד מתפריט נפתח.
כל קלט של בחירה תומך בסוג אחד של בחירה. למשל, אין תמיכה בשילוב של תיבות סימון ומתגים.
טיפוסים בני מנייה (enum) | |
---|---|
CHECK_BOX
|
קבוצה של תיבות סימון. המשתמשים יכולים לבחור תיבת סימון אחת או יותר. |
RADIO_BUTTON
|
קבוצת לחצני בחירה. משתמשים יכולים לבחור לחצן בחירה אחד. |
SWITCH
|
קבוצת מתגים. המשתמשים יכולים להפעיל מתג אחד או יותר. |
DROPDOWN
|
תפריט נפתח. המשתמשים יכולים לבחור פריט אחד מהתפריט. |
MULTI_SELECT
|
יש תמיכה באפליקציות Chat, אבל לא בתוספים של Google Workspace. תפריט של בחירה מרובה לנתונים סטטיים או דינמיים. בסרגל התפריטים, המשתמשים בוחרים אפשרות אחת או יותר. המשתמשים יכולים גם להזין ערכים כדי לאכלס נתונים דינמיים. לדוגמה, משתמשים יכולים להתחיל להקליד את השם של מרחב משותף ב-Google Chat, והווידג'ט מציע באופן אוטומטי את המרחב המשותף. כדי לאכלס פריטים בתפריט של בחירה מרובה, אפשר להשתמש באחד מהסוגים הבאים של מקורות נתונים:
בדף הווידג'ט
|
פריט הבחירה
פריט שמשתמשים יכולים לבחור בקלט בחירה, כמו תיבת סימון או מתג.
ייצוג JSON |
---|
{ "text": string, "value": string, "selected": boolean, "startIconUri": string, "bottomText": string } |
שדות | |
---|---|
text
|
הטקסט שמזהה או מתאר את הפריט למשתמשים. |
value
|
הערך שמשויך לפריט הזה. הלקוח צריך להשתמש בו כערך קלט בטופס. למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
selected
|
אם הפריט נבחר כברירת מחדל. אם קלט הבחירה מקבל ערך אחד בלבד (למשל עבור לחצני בחירה או תפריט נפתח), יש להגדיר את השדה הזה לפריט אחד בלבד. |
startIconUri
|
בתפריטים של בחירה מרובה, כתובת ה-URL של הסמל שמוצג לצד השדה
|
bottomText
|
בתפריטים של בחירה מרובה, תיאור טקסט או תווית שמוצגים מתחת לשדה
|
PlatformDataSource – מקור נתונים
רק אפליקציות צ'אט. לווידג'ט של
שמשתמש בתפריט עם אפשרויות בחירה מרובות, הנתונים מאפליקציה מארחת של Google Workspace. משמש לאכלוס הפריטים בתפריט הבחירה המרובת.
SelectionInput
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
שדה איחוד
data_source . מקור הנתונים.
data_source
יכול להיות רק אחת מהאפשרויות הבאות:
|
|
commonDataSource
|
לווידג'ט של
|
hostAppDataSource
|
מקור נתונים שייחודי לאפליקציה מארחת של Google Workspace, כמו אימיילים ב-Gmail, אירועים ביומן Google או הודעות ב-Google Chat.
|
CommonDataSource
רק אפליקציות צ'אט. מקור נתונים שמשותף לכל האפליקציות המארחות של Google Workspace.
טיפוסים בני מנייה (enum) | |
---|---|
UNKNOWN
|
ערך ברירת המחדל. אין להשתמש בו. |
USER
|
רשימת המשתמשים סופקה על ידי אפליקציית האירוח של Google Workspace. לדוגמה: כדי לקבל משתמשים מ-Google Chat, תוכלו להשתמש בשם המשאב של המשתמש. פורמט: משתמשים/{user}
|
HostAppDataSourceMarkup
רק אפליקציות צ'אט. לווידג'ט של
שמשתמש בתפריט בחירה מרובה, מקור נתונים מאפליקציית מארח של Google Workspace.
SelectionInput
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
שדה איחוד
data_source . אפליקציית Google Workspace שמקורות נתונים עבור תפריט של אפשרויות בחירה מרובות.
data_source
יכול להיות רק אחת מהאפשרויות הבאות:
|
|
chatDataSource
|
מקור הנתונים הוא Google Chat.
|
ChatClientDataSourceMarkup
רק אפליקציות צ'אט. לווידג'ט של
שמשתמש בתפריט בחירה מרובה, מקור נתונים מ-Google Chat. לדוגמה, רשימה של מרחבים משותפים ב-Google Chat שהמשתמש חבר בהם.
SelectionInput
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
שדה איחוד
source . מקור הנתונים של Google Chat.
source
יכול להיות רק אחת מהאפשרויות הבאות:
|
|
spaceDataSource
|
מקור נתונים שמייצג מרחב משותף ב-Google Chat. פורמט: רווחים/{רווח}
|
מקור הנתונים של SpaceData
מקור נתונים שמייצג מרחב משותף ב-Google Chat.
פורמט: רווחים/{רווח}
ייצוג JSON |
---|
{ "defaultToCurrentSpace": boolean } |
שדות | |
---|---|
defaultToCurrentSpace
|
כשמשתמשים ב-
|
DateTimeChooseer
מאפשרת למשתמשים להזין תאריך, שעה או תאריך ושעה. לדוגמה, אפשר להיכנס לכלי לבחירת תאריך ושעה כדי לראות דוגמאות באפליקציות של Google Chat.
המשתמשים יכולים להזין טקסט או להשתמש בבורר כדי לבחור תאריכים ושעות. אם המשתמשים מזינים תאריך או שעה לא חוקיים, הבורר מציג שגיאה שמבקשת מהמשתמשים להזין את המידע כראוי.
ייצוג JSON |
---|
{ "name": string, "label": string, "type": enum ( |
שדות | |
---|---|
name
|
השם שבו המאפיין למידע נוסף על עבודה עם קלט בטופס, תוכלו לקרוא את המאמר קבלת נתוני טופס. |
label
|
טקסט שמבקש מהמשתמשים להזין תאריך, שעה או תאריך ושעה. לדוגמה, אם משתמשים קובעים תור או פגישה, יש להשתמש בתווית כמו |
type
|
האם הווידג'ט תומך בהזנת תאריך, שעה או תאריך ושעה. |
valueMsEpoch
|
ערך ברירת המחדל שמוצג בווידג'ט, באלפיות השנייה מאז זמן מערכת של Unix.
ציון הערך בהתאם לסוג הבוחר (
|
timezoneOffsetDate
|
המספר שמייצג את הפרש השעות בין אזור הזמן לפי שעון UTC, בדקות. אם המדיניות מוגדרת, הערך |
onChangeAction
|
מופעל כשהמשתמש לוחץ על
Save
או על Clear
בממשק של |
DateTimeChooseerType
הפורמט של התאריך והשעה בווידג'ט DateTimePicker
. קובעת אם המשתמשים יכולים להזין תאריך, שעה או שניהם.
טיפוסים בני מנייה (enum) | |
---|---|
DATE_AND_TIME
|
המשתמשים מזינים תאריך ושעה. |
DATE_ONLY
|
המשתמשים מזינים תאריך. |
TIME_ONLY
|
המשתמשים מזינים שעה. |
קו מפריד
אין שדות בסוג הזה.
הצגת קו מפריד בין הווידג'טים כקו אופקי. דוגמאות רלוונטיות לאפליקציות של Google Chat: מפריד.
לדוגמה, קובץ ה-JSON הבא יוצר מחיצה:
"divider": {}
תצוגת רשת
הצגת רשת עם אוסף של פריטים. הפריטים יכולים לכלול רק טקסט או תמונות. אם רוצים להוסיף עמודות רספונסיביות, או כדי לכלול יותר טקסט או תמונות, צריך להשתמש בערך
. דוגמאות רלוונטיות לאפליקציות של Google Chat:
משבצות.
Columns
רשת תומכת בכל מספר של עמודות ופריטים. מספר השורות נקבע לפי הפריטים חלקי העמודות. רשת שמכילה 10 פריטים ו-2 עמודות מכילה 5 שורות. רשת שמכילה 11 פריטים ו-2 עמודות מכילה 6 שורות.
לדוגמה, קובץ ה-JSON הבא יוצר רשת של שתי עמודות עם פריט אחד:
"grid": {
"title": "A fine collection of items",
"columnCount": 2,
"borderStyle": {
"type": "STROKE",
"cornerRadius": 4
},
"items": [
{
"image": {
"imageUri": "https://www.example.com/image.png",
"cropStyle": {
"type": "SQUARE"
},
"borderStyle": {
"type": "STROKE"
}
},
"title": "An item",
"textAlignment": "CENTER"
}
],
"onClick": {
"openLink": {
"url": "https://www.example.com"
}
}
}
ייצוג JSON |
---|
{ "title": string, "items": [ { object ( |
שדות | |
---|---|
title
|
הטקסט שיוצג בכותרת הרשת. |
items[]
|
הפריטים שיוצגו ברשת. |
borderStyle
|
סגנון הגבול שיש להחיל על כל פריט ברשת. |
columnCount
|
מספר העמודות שיוצגו ברשת. המערכת תשתמש בערך ברירת מחדל אם השדה הזה לא צוין, וערך ברירת המחדל הזה ישתנה בהתאם למיקום שבו תוצג הרשת (תיבת דו-שיח לעומת רשת נלווית). |
onClick
|
כל פריט ברשת עושה שימוש חוזר בקריאה החוזרת, אבל המזהה והאינדקס של הפריט ברשימת הפריטים נוספו לפרמטרים של הקריאה החוזרת. |
פריט רשת
מייצג פריט בפריסת רשת. פריטים יכולים להכיל טקסט, תמונה או שניהם.
ייצוג JSON |
---|
{ "id": string, "image": { object ( |
שדות | |
---|---|
id
|
מזהה שצוין על ידי המשתמש עבור פריט הרשת הזה. המזהה הזה מוחזר לפרמטרים של הקריאה החוזרת (callback) מסוג
|
image
|
התמונה שמוצגת בפריט הרשת. |
title
|
השם של הפריט ברשת. |
subtitle
|
כותרת המשנה של הפריט לרשת. |
layout
|
הפריסה שבה יש להשתמש לפריט הרשת. |
רכיב תמונה
תמונה שמייצגת תמונה.
ייצוג JSON |
---|
{ "imageUri": string, "altText": string, "cropStyle": { object ( |
שדות | |
---|---|
imageUri
|
כתובת ה-URL של התמונה. |
altText
|
תווית הנגישות של התמונה. |
cropStyle
|
סגנון החיתוך שצריך להחיל על התמונה. |
borderStyle
|
סגנון הגבול שיש להחיל על התמונה. |
ImageCropStyle (סגנון תמונה חיתוך)
מייצג את סגנון החיתוך המוחל על תמונה.
לדוגמה, כך מגדירים יחס גובה-רוחב של 16:9:
cropStyle {
"type": "RECTANGLE_CUSTOM",
"aspectRatio": 16/9
}
ייצוג JSON |
---|
{
"type": enum (
|
שדות | |
---|---|
type
|
סוג החיתוך. |
aspectRatio
|
יחס הגובה-רוחב שבו יש להשתמש אם סוג החיתוך הוא
לדוגמה, כך מגדירים יחס גובה-רוחב של 16:9:
|
סוג תמונה חתוכה
מייצג את סגנון החיתוך המוחל על תמונה.
טיפוסים בני מנייה (enum) | |
---|---|
IMAGE_CROP_TYPE_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
SQUARE
|
ערך ברירת המחדל. מחיל חיתוך בצורת ריבוע. |
CIRCLE
|
יוצר חיתוך עגול. |
RECTANGLE_CUSTOM
|
יוצר חיתוך מלבני עם יחס גובה-רוחב מותאם אישית. מגדירים את יחס הגובה-רוחב המותאם אישית עם
aspectRatio .
|
RECTANGLE_4_3
|
יוצר חיתוך מלבני עם יחס גובה-רוחב של 4:3. |
סגנון גבול
אפשרויות הסגנון לשוליים של כרטיס או ווידג'ט, כולל סוג הגבול והצבע.
ייצוג JSON |
---|
{ "type": enum ( |
שדות | |
---|---|
type
|
סוג הגבול. |
strokeColor
|
הצבעים שבהם יש להשתמש כשהסוג הוא
|
cornerRadius
|
רדיוס הפינה של הגבול. |
סוג גבול
מייצג את סוגי הגבולות שהוחלו על ווידג'טים.
טיפוסים בני מנייה (enum) | |
---|---|
BORDER_TYPE_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
NO_BORDER
|
ערך ברירת המחדל. ללא גבול. |
STROKE
|
קווי מתאר. |
פריסת GridItemLayout
השדה הזה מייצג את אפשרויות הפריסה השונות שזמינות לפריט בתצוגת רשת.
טיפוסים בני מנייה (enum) | |
---|---|
GRID_ITEM_LAYOUT_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
TEXT_BELOW
|
הכותרת וכותרת המשנה מוצגות מתחת לתמונה של הפריט ברשת. |
TEXT_ABOVE
|
הכותרת וכותרת המשנה מוצגות מעל לתמונה של הפריט ברשת. |
עמודות
בווידג'ט Columns
מוצגות עד 2 עמודות בהודעה או בתיבת הדו-שיח בכרטיס. ניתן להוסיף ווידג'טים לכל עמודה. הווידג'טים מופיעים לפי הסדר שבו צוינו. דוגמאות רלוונטיות לאפליקציות של Google Chat: עמודות.
הגובה של כל עמודה נקבע על ידי העמודה הגבוהה יותר. לדוגמה, אם העמודה הראשונה גבוהה מהעמודה השנייה, לשתי העמודות יהיה גובה של העמודה הראשונה. מאחר שכל עמודה יכולה להכיל מספר שונה של ווידג'טים, לא ניתן להגדיר שורות או ליישר ווידג'טים בין העמודות.
העמודות מוצגות זו לצד זו. אפשר להתאים אישית את הרוחב של כל עמודה באמצעות השדה HorizontalSizeStyle
. אם רוחב המסך של המשתמש צר מדי, העמודה השנייה תגלוש מתחת לעמודה הראשונה:
- באינטרנט, העמודה השנייה גולשת אם רוחב המסך קטן מ-480 פיקסלים או שווה לו.
- במכשירי iOS, העמודה השנייה גולשת אם רוחב המסך קטן מ-300 נק' או שווה לו.
- במכשירי Android, העמודה השנייה גולשת אם רוחב המסך קטן מ-320dp או שווה לו.
כדי לכלול יותר מ-2 עמודות או כדי להשתמש בשורות, צריך להשתמש בווידג'ט
.
Grid
יש תמיכה באפליקציות Chat, אבל לא בתוספים של Google Workspace.
ייצוג JSON |
---|
{
"columnItems": [
{
object (
|
שדות | |
---|---|
columnItems[]
|
מערך של עמודות. אפשר לכלול עד 2 עמודות בכרטיס או בתיבת דו-שיח. |
עמודה
עמודה.
ייצוג JSON |
---|
{ "horizontalSizeStyle": enum ( |
שדות | |
---|---|
horizontalSizeStyle
|
קובעת איך עמודה ממלאת את רוחב הכרטיס. |
horizontalAlignment
|
קובעת אם הווידג'טים מיושרים לשמאל, לימין או למרכז של עמודה. |
verticalAlignment
|
קובעת אם הווידג'טים מיושרים לחלק העליון, לתחתית או למרכז של העמודה. |
widgets[]
|
מערך של ווידג'טים כלול בעמודה. הווידג'טים מופיעים לפי סדר ציינתם. |
HorizontalSizeStyle
קובעת איך עמודה ממלאת את רוחב הכרטיס. הרוחב של כל עמודה תלוי גם ב-HorizontalSizeStyle
וגם ברוחב הווידג'טים של העמודה.
טיפוסים בני מנייה (enum) | |
---|---|
HORIZONTAL_SIZE_STYLE_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
FILL_AVAILABLE_SPACE
|
ערך ברירת המחדל. העמודה ממלאת את השטח הזמין, עד 70% מרוחב הכרטיס. אם בשתי העמודות מוגדר הערך FILL_AVAILABLE_SPACE , כל עמודה תמלא 50% מהשטח.
|
FILL_MINIMUM_SPACE
|
העמודה ממלאת את השטח המינימלי האפשרי ולא יותר מ-30% מרוחב הכרטיס. |
יישור אופקי
קובעת אם הווידג'טים מיושרים לשמאל, לימין או למרכז של עמודה.
טיפוסים בני מנייה (enum) | |
---|---|
HORIZONTAL_ALIGNMENT_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
START
|
ערך ברירת המחדל. יישור ווידג'טים למיקום ההתחלה של העמודה. בפריסות משמאל לימין, יישור לשמאל. בפריסות מימין לשמאל, יישור לימין. |
CENTER
|
יישור הווידג'טים למרכז העמודה. |
END
|
יישור ווידג'טים למיקום הסיום של העמודה. בפריסות משמאל לימין, יישור הווידג'טים לימין. בפריסות מימין לשמאל, יישור ווידג'טים לשמאל. |
יישור אנכי
קובעת אם הווידג'טים מיושרים לחלק העליון, לתחתית או למרכז של העמודה.
טיפוסים בני מנייה (enum) | |
---|---|
VERTICAL_ALIGNMENT_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
CENTER
|
ערך ברירת המחדל. יישור ווידג'טים למרכז העמודה. |
TOP
|
יישור ווידג'טים לחלק העליון של עמודה. |
BOTTOM
|
יישור ווידג'טים לחלק התחתון של עמודה. |
ווידג'טים
הווידג'טים הנתמכים שניתן לכלול בעמודה.
ייצוג JSON |
---|
{ // Union field |
שדות | |
---|---|
שדה איחוד
|
|
textParagraph
|
הווידג'ט |
image
|
הווידג'ט |
decoratedText
|
הווידג'ט |
buttonList
|
הווידג'ט |
textInput
|
הווידג'ט |
selectionInput
|
הווידג'ט |
dateTimePicker
|
הווידג'ט |
סגנון חילוק
סגנון הקו המפריד של כרטיס. משמש כרגע רק להפרדה בין חלקים בכרטיס.
טיפוסים בני מנייה (enum) | |
---|---|
DIVIDER_STYLE_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
SOLID_DIVIDER
|
אפשרות ברירת המחדל. יוצרים הפרדה מלאה בין הקטעים. |
NO_DIVIDER
|
אם המדיניות מוגדרת, לא יוצג קו מפריד בין קטעים. |
פעולה בכרטיס
פעולה בכרטיס היא הפעולה שמשויכת לכרטיס. לדוגמה, כרטיס חשבונית עשוי לכלול פעולות כמו מחיקת חשבונית, חשבונית באימייל או פתיחת החשבונית בדפדפן.
ההגדרה הזו לא נתמכת באפליקציות צ'אט.
ייצוג JSON |
---|
{
"actionLabel": string,
"onClick": {
object (
|
שדות | |
---|---|
actionLabel
|
התווית שמוצגת כפריט בתפריט הפעולות. |
onClick
|
הפעולה
|
סגנון תצוגה
התוספים של Google Workspace קובעים איך הכרטיס יוצג.
ההגדרה הזו לא נתמכת באפליקציות צ'אט.
טיפוסים בני מנייה (enum) | |
---|---|
DISPLAY_STYLE_UNSPECIFIED
|
אין להשתמש בו. לא צוינה. |
PEEK
|
הכותרת של הכרטיס מופיעה בחלק התחתון של סרגל הצד, מכסה חלקית את הכרטיס העליון הנוכחי במקבץ. לחיצה על הכותרת מקפיץ את הכרטיס לערימת הכרטיסים. אם לכרטיס אין כותרת, המערכת תשתמש בכותרת שנוצרה. |
REPLACE
|
ערך ברירת המחדל. כדי להציג את הכרטיס, הוא מחליף את תצוגת הכרטיס העליון בערימת הכרטיסים. |