Como criar um botão Share em Kotlin
Android Kotlin

Como criar um botão Share em Kotlin





Nesse tutorial vou descrever Como criar um botão Share(Compartilhar) em Kotlin então vou criar um projeto bem simples para apenas compartilhar uma frase de um EditText.

Primeiramente vamos criar um projeto vazio(Empty) para começar a fazer nossas mudanças.

Se você não sabe como criar um projeto vazio veja então no tutorial Como criar um projeto no Android Studio.

Logo depois de ter criado o projeto vazio vamos então modificar a nossa activity_main para criar o nosso layout.

No nosso layout deve conter um TextView com instruções, um EditText para escrever a mensagem que vai ser compartilhada e um Button para enviar a mensagem então vamos deixar da seguinte forma.

activity_main

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_margin="20dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Digite um texto para compartilhar:" />
        <EditText
            android:id="@+id/etShare"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
        <Button
            android:id="@+id/btnShare"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Share"/>
    </LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>




Agora então chegou a hora de programar nossa MainActivity para que pegue o texto do EditText e compartilhe.

Para isso vamos deixar o código assim como o seguinte.

MainActivity

package br.com.uware.share

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.appcompat.app.AlertDialog
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        btnShare.setOnClickListener {
            val shareTask = etShare.text.toString()
            val dialog = AlertDialog.Builder(this).setTitle("Info").setMessage("Você deseja compartilhar?")
                .setPositiveButton("Sim") { dialog, _ ->
                    setShareIntent(shareTask(shareTask))
                    dialog.dismiss()
                }
                .setNegativeButton("Não") { dialog, _ ->
                    dialog.dismiss()
                }
            dialog.show()
        }
    }
    private fun setShareIntent(shareBody: String){
        val sharingIntent = Intent(Intent.ACTION_SEND)
        sharingIntent.type = "text/plain"
        sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, shareBody)
        startActivity(Intent.createChooser(sharingIntent, "Share text da https://uware.com.br"))
    }
    fun shareTask(str: String): String {
        val resp = "Share Text:\n"+str+"\nhttps://uware.com.br - uware"
        return resp
    }
}

Logo após ter feito as mudanças nos arquivos vamos então compilar e executar nosso projeto.

Então agora podemos ver que é simples para compartilhar uma informação com Kotlin.

Você também pode clonar nosso repositório com o seguinte comando.

[[email protected] ~]$ git clone https://github.com/uware-com-br/sharetext

Enfim espero poder ter ajudado com mais este tutorial sobre Como criar um botão Share(Compartilhar) em Kotlin.

Visite e siga nosso canal no YouTube para ajudar no crescimento do site.





Rodrigo Leutz
Desenvolvedor Web e Android ( Kotlin e Java )
https://uware.com.br