Вот мой Kotlin код активности:
package com.florize.nostagram
import android.content.Intent
import android.os.Bundle
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.auth.FirebaseUser
import kotlinx.android.synthetic.main.activity_login.*
class LoginActivity : AppCompatActivity() {
var auth: FirebaseAuth? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
auth = FirebaseAuth.getInstance()
email_login_button.setOnClickListener {
signinAndSignup()
}
}
fun signinAndSignup() {
auth?.createUserWithEmailAndPassword(
email_edittext.toString().trim(),
password_edittext.toString()
)
?.addOnCompleteListener { task ->
if (task.isSuccessful) {
//Creating a user account
moveMainPage(task.result?.user)
} else if (task.exception?.message.isNullOrEmpty()) {
//Show the error message
Toast.makeText(this, task.exception?.message, Toast.LENGTH_LONG).show()
} else {
//Login if you have account
signinEmail()
}
}
}
}
и мой код макета:
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp">
<EditText
android:id="@+id/email_edittext"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:hint="@string/email" />
</com.google.android.material.textfield.TextInputLayout>
Я установил inputType для поля электронной почты. но Firebase Toast говорит: «Адрес электронной почты плохо отформатирован». и я добавил, что trim () за "email_edittext.toString ()" не работает. все та же ошибка. Как я могу это исправить?
(я сократил код активности Kotlin, потому что он слишком длинный)