Kullanıcı etkileşimlerini etkinleştirme

Jetpack Compose, Text ürününde ayrıntılı etkileşim sağlar. Metin seçimi (şimdiki değeri) artık daha esnek olacak ve composable düzenlerde uygulanabiliyor. Kullanıcı etkileşimleri Değiştirici ekleyemediğiniz için metinler, diğer composable düzenlerden farklıdır. Text composable'ın bir bölümüne geri dönüyor. Bu sayfada API'ler vurgulanmaktadır gibi çeşitli araçlar sunar.

Metin seçin

Varsayılan olarak, composable'lar seçilemez. Bu, kullanıcıların uygulamanızdan metin seçip kopyalayın. Metin seçimini etkinleştirmek için kaydır SelectionContainer composable ile metin öğelerinize ekleyin:

@Composable
fun SelectableText() {
    SelectionContainer {
        Text("This text is selectable")
    }
}

Kullanıcı tarafından seçilen kısa bir metin parçası.

Seçilebilir bir alanın belirli bölümlerinde seçimi devre dışı bırakmak isteyebilirsiniz. Yapılacaklar bu nedenle, seçilemeyen bölümü bir DisableSelection composable:

@Composable
fun PartiallySelectableText() {
    SelectionContainer {
        Column {
            Text("This text is selectable")
            Text("This one too")
            Text("This one as well")
            DisableSelection {
                Text("But not this one")
                Text("Neither this one")
            }
            Text("But again, you can select this one")
            Text("And this one too")
        }
    }
}

Daha uzun bir metin parçası. Kullanıcı pasajın tamamını seçmeye çalıştı ancak iki satırda DisableSelection olduğu için bu satırlar seçilmedi.

LinkAnnotation ile tıklanabilir metin bölümleri oluşturun

Text üzerindeki tıklamaları dinlemek için clickable özelliğini ekleyebilirsiniz kullanabilirsiniz. Ancak, projenizin belirli bir bölümüne fazladan bilgi eklemek isteyebilirsiniz. Text değerine (örneğin, belirli bir kelimeye eklenmiş bir URL'nin emin olun. Bu gibi durumlarda LinkAnnotation kullanmanız gerekir. metnin tıklanabilir bir bölümünü temsil eden bir ek açıklama.

LinkAnnotation ile Text composable'ın bir kısmına URL ekleyebilirsiniz aşağıdaki snippet'te gösterildiği gibi, tıklandığında otomatik olarak açılır:

Ayrıca, Text composable. Aşağıdaki snippet'te, kullanıcı "Jetpack Compose" (Jetpack Compose) yazıyorsa bir bağlantı gösterilir ve kullanıcı bağlantıyı tıkladığında: