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.
Tags:
Android Studio estático Kotlin loginPosts relacionados: