Redes Sociais
 Telegram  YouTube
Como fazer login estático com kotlin
5 de abril de 2020

Nesse tutorial vou descrever como fazer login estático com kotlin com acesso a uma activity, para que assim você entenda checagem de variáveis.

Primeiramente vamos criar um projeto vazio(Empty), se você ainda não sabe como fazer de uma olhada no link.

Logo após ter criado o novo projeto vamos então começar a editar nossos arquivos para que tudo funcione.

Então vamos começar pelos arquivo de layout, o primeiro que vamos editar é nosso arquivo de strings para que o projeto já contenha todas elas.

Em nosso arquivo string.xml vamos deixar da seguinte maneira.

<resources>
    <string name="app_name">Login Estático</string>

    <string name="login">Login</string>
    <string name="passwd">Senha</string>
    <string name="enter">Entrar</string>

    <string name="login_OK">Você logou no sistema com sucesso.</string>
    <string name="login_ERR">Você não está autorizado a utilizar o sistema.</string>
</resources>




Após ter modificado nosso arquivo de strings vamos criar uma nova activity para que de a resposta sobre o login com o nome de RespActivity.

Se você não sabe como criar uma nova activity veja o tutorial do link.

Chegou a hora de modificar nossos arquivos de layout, então vamos começar modificando o activity_main e o código deve ficar como o seguinte.

<?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">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="@string/app_name"
        android:textSize="30dp"
        android:textStyle="bold"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toTopOf="@+id/layLogin"/>
    <LinearLayout
        android:id="@+id/layLogin"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_margin="16dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/login"/>
        <EditText
            android:id="@+id/etLogin"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/passwd"/>
        <EditText
            android:id="@+id/etPasswd"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="textPassword"/>
    </LinearLayout>
    <Button
        android:id="@+id/btnEnter"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/enter"
        app:layout_constraintBottom_toBottomOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>

Nesse momento vamos modificar nosso ultimo layout que é o activity_resp deixando da seguinte forma.

<?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=".RespActivity">
    <TextView
        android:id="@+id/tvResp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="30dp"
        android:layout_margin="16dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>




Agora chegou a hora de trabalhar em nossas duas Activities.

Vamo modificar primeiro nossa MainActivity deixando da seguinte maneira.

package br.com.uware.loginesttico

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

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        btnEnter.setOnClickListener {
            val intent = Intent(this, RespActivity::class.java)
            if (etLogin.text.toString() == "usuario" && etPasswd.text.toString() == "1234"){
                intent.putExtra("result", getString(R.string.login_OK))
            }
            else {
                intent.putExtra("result", getString(R.string.login_ERR))
            }
            startActivity(intent)
        }
    }
}

E para terminar vamos modificar a RespActivity para receber a resposta enviada pela nossa MainActivity.

Então vamos deicar nossa RespActivity da seguinte maneira.

package br.com.uware.loginesttico

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_resp.*

class RespActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_resp)
        tvResp.text = intent.getStringExtra("result")
    }
}

Agora é só compilar e executar o projeto para ver como funciona.

Enfim espero poder ter ajudado com mais este tutorial sobre como fazer login estático com kotlin e que você agora consiga começar a fazer seus sistemas de login.

Veja também nosso canal no YouTube.





Autor: Rodrigo Leutz

Desenvolvedor Web e Android ( Kotlin e Java )


Pegar endereço com CEP usando coroutines e retrofit em Kotlin

Nesse tutorial vou mostrar como fazer um aplicativo em MVVM para pegar endereço com CEP usando coroutines e retrofit em[...]

4 de novembro de 2020

Converter Binário para Inteiro e Inteiro para Binário em Kotlin

Nesse tutorial vamos portanto ver como converter número binário para inteiro e também inteiro para binário em Kotlin no Android[...]

29 de outubro de 2020

Problema com Kotlin e synthetic no Android Studio

Notei que tem algumas pessoas com problemas com kotlin e synthetic no Android Studio então escrevi esta dica para solução desse[...]

27 de outubro de 2020