Метод setType
Метод setType класса
Intent
сообщает системе формат данных.
Нужен для неявных intent вроде ACTION_SEND,
когда Uri не задают.
Если нужны и Uri, и тип, используйте
setDataAndType,
иначе один из вызовов может сбросить другой.
Синтаксис
intent.setType("text/plain")
Параметры
| Параметр | Описание |
|---|---|
type |
Строка MIME, например text/plain или image/png. |
Пример
Давайте отправим plain-текст:
import android.content.Intent
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.material3.Button
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Button(onClick = {
val intent = Intent(Intent.ACTION_SEND)
intent.setType("text/plain")
intent.putExtra(Intent.EXTRA_TEXT, "abcde")
startActivity(intent)
}) {
Text(text = "12345")
}
}
}
}
На экране система предложит приложения,
которые принимают текст "abcde".
Пример
Давайте зададим type через свойство type:
import android.content.Intent
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.material3.Button
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Button(onClick = {
val intent = Intent(Intent.ACTION_SEND).apply {
type = "text/plain"
putExtra(Intent.EXTRA_TEXT, "12345")
}
startActivity(intent)
}) {
Text(text = "abcde")
}
}
}
}
На экране снова откроется выбор приложения
для отправки строки "12345".
Смотрите также
-
метод
setDataAndType,
Uri и MIME одним вызовом -
метод
setAction,
который задаёт ACTION_SEND -
метод
putExtra,
который кладёт EXTRA_TEXT -
метод
createChooser,
диалог выбора приложения