Publicado en Android

Uso del portapapeles en Android


Si desea copiar o obtener contenido del portapapeles de Android, me he creado el siguiente controlador

ClipboardUtils

object ClipboardUtils {

    fun setText(context: Context, text: String?, label: String = "clip_text"): Boolean {
        val myClipboard = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
        myClipboard.setPrimaryClip(ClipData.newPlainText(label, text))
        return true
    }

    fun getText(context: Context): String? {
        val myClipboard = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
        val clipData = myClipboard.primaryClip

        if (clipData != null && clipData.itemCount > 0) {
            val clipboardText = clipData.getItemAt(0).text
            if (clipboardText != null) {
                return clipboardText.toString()
            }
        }
        return null
    }

}

Copiar texto al portapapeles

con el método setText se puede cargar el contenido al portapapeles, solo es necesario pasarle el contexto, contenido y una etiqueta *opcional

El contenido debe ser texto plano, al completarse la operación devolverá un true

if (ClipboardUtils.setText(this@MainActivity, "Vader is Luke's father"))
   //toast(getText(R.string.copy_clipboard))

Obtener texto del portapapeles

con el método getText podemos recuperar el contenido del portapapeles, solamente si es contenido de texto plano, si no lo es devuelve un nulo

val contenido = ClipboardUtils.getText()

Recursos

He actualizado el recurso de java a Kotlin dejo el git

Autor:

Desarrollador freelance programador apasionado por el arte de programar, amante del auto aprendizaje y interesado por la tecnología en general.

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.