Halaman ini menjelaskan cara mem-build komponen dan struktur kartu. Kartu adalah antarmuka pengguna yang dapat digunakan aplikasi Google Chat untuk menampilkan dan mengumpulkan informasi dari pengguna Chat. Aplikasi Chat dapat membuat dan menampilkan kartu di antarmuka berikut:
- Pesan yang berisi satu atau beberapa kartu.
- Halaman beranda, yang merupakan kartu yang muncul dari tab Beranda dalam pesan langsung dengan aplikasi Chat.
- Dialog, yang merupakan kartu yang terbuka di jendela baru dari pesan dan halaman beranda.
Di halaman ini, Anda akan mempelajari komponen kartu berikut:
- Header, yang biasanya berisi judul kartu atau bagian kartu.
- Bagian, yang membentuk isi utama kartu, termasuk widget dan elemen interaktif lainnya. Di bagian kartu, Anda dapat menambahkan lebih banyak struktur ke kartu, termasuk kolom dan petak.
- Footer tetap, yang muncul di bagian bawah dialog untuk menampilkan elemen UI persisten, seperti tombol.
Prasyarat
Aplikasi Google Chat yang diaktifkan untuk fitur interaktif. Untuk membuat aplikasi Chat interaktif, selesaikan salah satu panduan memulai berikut berdasarkan arsitektur aplikasi yang ingin Anda gunakan:
- Layanan HTTP dengan Google Cloud Functions
- Google Apps Script
- Google Cloud Dialogflow CX
- Google Cloud Pub/Sub
Gunakan Card Builder untuk mendesain dan melihat pratinjau antarmuka pengguna dan pesan untuk aplikasi Chat:
Buka Pembuat KartuMenambahkan header
Widget CardHeader
mewakili header kartu. Header dapat menyertakan judul, subtitel, dan gambar avatar untuk kartu Anda.
Berikut adalah contoh CardHeader
:
Menambahkan satu atau beberapa bagian kartu
Widget CardSection
adalah penampung tingkat tinggi dalam kartu. Anda menggunakan bagian
kartu untuk mengelompokkan widget dalam kartu. Untuk setiap bagian kartu, Anda dapat menyertakan header dan satu atau beberapa widget.
Berikut adalah contoh CardSection
yang berisi dua widget
textParagraph
:
Menambahkan pembagi horizontal di antara widget
Widget divider
menampilkan garis horizontal yang membentang di seluruh lebar kartu di antara widget yang ditumpuk secara vertikal. Garis adalah pemisah visual yang membantu
pengguna membedakan antara satu widget dengan widget lainnya, sehingga kartu lebih mudah dipindai
dan dipahami.
Berikut adalah kartu yang terdiri dari widget divider
di antara jenis widget
lainnya:
Tambahkan kolom
Widget columns
menampilkan hingga 2 kolom dalam kartu. Anda dapat menambahkan
widget ke setiap kolom; widget akan muncul sesuai urutan yang ditentukan.
Untuk menyertakan lebih dari 2 kolom, atau untuk menggunakan baris, gunakan widget grid
.
Tinggi setiap kolom ditentukan oleh kolom yang lebih tinggi. Misalnya, jika kolom pertama lebih tinggi dari kolom kedua, kedua kolom memiliki tinggi kolom pertama. Karena setiap kolom dapat berisi jumlah widget yang berbeda, Anda tidak dapat menentukan baris atau meratakan widget di antara kolom.
Contoh berikut menampilkan kartu dengan widget columns
yang menampilkan
2 kolom teks. Untuk hanya melihat tata letak kolom dan menciutkan contoh
kode, klik Ciutkan.
Jika ruang dibatasi, seperti dalam contoh berikut, kolom kedua akan digabungkan di bawah kolom pertama.
Menentukan lebar kolom
Kolom ditampilkan berdampingan. Anda dapat menyesuaikan lebar setiap kolom
menggunakan
kolom horizontalSizeStyle
.
Jika lebar layar pengguna terlalu sempit, kolom kedua akan digabungkan di bawah
kolom pertama:
- Di web, kolom kedua akan digabungkan jika lebar layar kurang dari atau sama dengan 480 piksel.
- Di perangkat iOS, kolom kedua akan digabungkan jika lebar layar kurang dari atau sama dengan 300 pt.
- Di perangkat Android, kolom kedua akan digabungkan jika lebar layar kurang dari atau sama dengan 320 dp.
Contoh berikut menampilkan kartu dengan widget columns
yang menampilkan
2 kolom teks dengan 4 item dalam kolom. Setiap item dalam kolom telah menerapkan
horizontalSizeStyle
untuk memanipulasi jumlah ruang yang diisi teks
di setiap kolom:
- Paragraf teks pertama menggunakan
FILL_MINIMUM_SPACE
untuk mengisi tidak lebih dari 30% lebar kartu. - Paragraf teks kedua menggunakan
FILL_AVAILABLE_SPACE
untuk mengisi ruang yang tersedia dalam lebar kartu. Dalam contoh ini, gambar mengisi 70% lebar kartu. - Paragraf teks ketiga tidak menentukan
horizontalSizeStyle
sehingga secara default mengisi ruang yang tersedia di ruang kartu. - Paragraf teks keempat menggunakan
FILL_MINIMUM_SPACE
untuk mengisi tidak lebih dari 30% lebar kartu.
Menentukan perataan horizontal kolom
Anda dapat meratakan widget secara horizontal ke kiri, kanan, atau tengah kolom dengan
menentukan
kolom horizontalAligment
.
Jika kolom horizontalAlignment
tidak ditentukan, widget akan disejajarkan ke
kiri dalam kolom.
Contoh berikut meratakan teks secara horizontal dalam kolom ke kiri:
Contoh berikut meratakan teks secara horizontal dalam kolom di tengah:
Contoh berikut meratakan teks secara horizontal dalam kolom ke kanan:
Menentukan perataan vertikal kolom
Anda dapat meratakan widget secara vertikal ke bagian atas, bawah, atau tengah kolom dengan menentukan kolom verticalAlignment
.
Jika kolom verticalAlignment
tidak ditentukan, widget dalam kolom akan disejajarkan
ke atas.
Contoh berikut menyejajarkan teks secara vertikal dalam kolom ke atas:
Contoh berikut meratakan teks secara vertikal dalam kolom di tengah:
Contoh berikut meratakan teks secara vertikal dalam kolom di bagian bawah:
Menambahkan petak untuk menampilkan kumpulan item
Widget grid
menampilkan petak dengan kumpulan item. Petak mendukung jumlah kolom dan item berapa pun. Jumlah baris ditentukan oleh item yang dibagi dengan kolom.
Petak dengan 10 item dan 2 kolom memiliki 5 baris. Petak dengan 11 item dan 2
kolom memiliki 6 baris.
Widget ini mendukung saran, yang membantu pengguna memasukkan data yang seragam, dan
tindakan saat berubah, yaitu
Actions
yang berjalan saat perubahan terjadi di kolom input teks, seperti pengguna menambahkan atau
menghapus teks.
Contoh berikut adalah petak 2 kolom dengan satu item:
Untuk menentukan tempat teks muncul dengan gambar dalam petak, Anda dapat menentukan
kolom gridItemLayout
.
Kolom ini memungkinkan Anda menentukan apakah teks muncul di atas atau di bawah
item dalam petak. Jika gridItemLayout
tidak ditentukan, teks akan muncul secara default di bawah item dalam petak.
Contoh berikut adalah petak tiga kolom dengan teks dan gambar di setiap petak. Petak pertama menentukan teks yang akan muncul di atas gambar, petak kedua menentukan teks yang akan muncul di bawah gambar, dan petak ketiga tidak menentukan posisi teks.
Menambahkan batas ke petak atau kolom
Untuk item yang muncul di widget column
atau grid
, Anda dapat menambahkan batas ke
elemen UI ini dengan menentukan
kolom borderType
dan
kolom borderStyle
.
Jika tidak ada kolom borderStyle
yang ditentukan, kolom tersebut akan ditetapkan secara default untuk tidak menampilkan batas. Anda dapat
menentukan borderType
untuk diterapkan ke semua item dalam widget atau menerapkan gaya
ke setiap item dalam widget.
Contoh berikut adalah petak 2 kolom dengan gambar di setiap petak tempat jenis, gaya, dan warna batas telah ditentukan untuk diterapkan ke semua item dalam petak.
Contoh berikut adalah petak 3 kolom dengan gambar di setiap petak serta
gaya dan jenis batas yang ditentukan satu per satu. Gambar
pertama memiliki batas yang ditentukan sebagai STROKE
. Gambar kedua memiliki batas yang ditentukan sebagai
NO_BORDER
. Gambar ketiga tidak memiliki batas yang ditentukan.
Menambahkan footer persisten
Widget CardFixedFooter
mewakili footer pesan dialog yang dikirim oleh
aplikasi Chat.
Footer dapat menyertakan tombol utama dan tombol sekunder.
Widget CardFixedFooter
hanya tersedia untuk
dialog.
Berikut adalah contoh widget CardFixedFooter
dengan dua tombol:
Memecahkan masalah
Saat aplikasi Google Chat atau kartu menampilkan error, antarmuka Chat akan menampilkan pesan yang bertuliskan "Terjadi masalah". atau "Tidak dapat memproses permintaan Anda". Terkadang UI Chat tidak menampilkan pesan error, tetapi aplikasi atau kartu Chat menghasilkan hasil yang tidak terduga; misalnya, pesan kartu mungkin tidak muncul.
Meskipun pesan error mungkin tidak ditampilkan di UI Chat, pesan error deskriptif dan data log tersedia untuk membantu Anda memperbaiki error saat logging error untuk aplikasi Chat diaktifkan. Untuk mendapatkan bantuan dalam melihat, men-debug, dan memperbaiki error, lihat Memecahkan masalah dan memperbaiki error Google Chat.