Anda dapat mendukung beberapa link dalam satu string teks untuk melakukan tindakan yang berbeda saat mengklik subbagian teks.
Kompatibilitas versi
Implementasi ini mengharuskan minSDK project Anda ditetapkan ke API level 21 atau yang lebih tinggi.
Dependensi
Menampilkan beberapa link dalam satu string
Cuplikan ini menyematkan beberapa link yang dapat diklik ke dalam satu string teks:
@Composable fun AnnotatedStringWithLinkSample() { // Display multiple links in the text Text( buildAnnotatedString { append("Go to the ") withLink( LinkAnnotation.Url( "https://developer.android.com/", TextLinkStyles(style = SpanStyle(color = Color.Blue)) ) ) { append("Android Developers ") } append("website, and check out the") withLink( LinkAnnotation.Url( "https://developer.android.com/jetpack/compose", TextLinkStyles(style = SpanStyle(color = Color.Green)) ) ) { append("Compose guidance") } append(".") } ) }
Poin-poin penting tentang kode
- Menggunakan fungsi
buildAnnotatedString
untuk membuat string teks yang dianotasi. - Menentukan gaya link dan teks dengan meneruskannya sebagai argumen fungsi
LinkAnnotation.Url()
(yang diteruskan sebagai argumen fungsiwithLink()
). Pemroses klik disertakan dalamLinkAnnotation.Url()
. - Menambahkan teks menggunakan
append()
dalam isi fungsiwithLink
. - Mengulangi proses ini untuk menambahkan segmen teks tertaut lainnya.
Hasil
![Satu string teks yang berisi dua link berbeda](https://developer.android.google.cn/static/quick-guides/content/multiple-links.png?hl=id)
Koleksi yang berisi panduan ini
Panduan ini adalah bagian dari koleksi Panduan Cepat pilihan yang membahas sasaran pengembangan Android yang lebih luas:
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=id)
Teks tampilan
Teks adalah bagian utama dari setiap UI. Cari tahu berbagai cara
untuk menyajikan teks di aplikasi Anda guna memberikan pengalaman pengguna yang menyenangkan.
Ada pertanyaan atau masukan
Buka halaman pertanyaan umum (FAQ) dan pelajari panduan singkat atau hubungi kami dan beri tahu kami pendapat Anda.