Attiva le interazioni degli utenti

Jetpack Compose consente un'interattività granulare in Text. La selezione del testo è ora più flessibile e può essere eseguito in tutti i layout componibili. Interazioni degli utenti nel testo sono diversi da altri layout componibili, in quanto non puoi aggiungere in una porzione di un componibile Text. Questa pagina evidenzia le API che consentono le interazioni degli utenti.

Seleziona testo

Per impostazione predefinita, gli elementi componibili non sono selezionabili, il che significa che gli utenti non selezionare e copiare testo dalla tua app. Per attivare la selezione del testo, a capo gli elementi di testo con un elemento componibile SelectionContainer:

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

Un breve passaggio di testo, selezionato dall'utente.

Potresti voler disattivare la selezione in parti specifiche di un'area selezionabile. Da fare Devi quindi aggregare la parte non selezionabile con un elemento DisableSelection componibile:

@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")
        }
    }
}

Un passaggio di testo più lungo. L'utente ha provato a selezionare l'intero passaggio, ma poiché a due righe è stata applicata l'opzione disattivata, non è stata selezionata.

Crea sezioni di testo cliccabili con LinkAnnotation

Per ascoltare i clic su Text, puoi aggiungere clickable modificatore. Tuttavia, è consigliabile allegare informazioni aggiuntive a una parte specifica il valore Text, ad esempio un URL associato a una determinata parola da aprire in una del browser. In questi casi, devi utilizzare una LinkAnnotation, che è Un'annotazione che rappresenta una parte cliccabile del testo.

Con LinkAnnotation, puoi collegare un URL a una parte di un componibile Text che si apre automaticamente quando viene fatto clic, come mostrato nello snippet seguente:

Puoi anche configurare un'azione personalizzata in risposta al clic di un utente su una parte il componibile Text. Nel seguente snippet, quando l'utente fa clic su "Jetpack Compose", viene visualizzato un link e le metriche vengono registrate se l'utente fa clic sul link: