mohanad.99
mohanad.99

Reputation: 173

Check if EditText is empty kotlin android

How do you check if an EditText is empty? input type number

package com.example.www.myapplication

import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*
import java.util.*

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    button.setOnClickListener {

        val inter:Int=editText.text.toString().toInt()
        val year: Int = Calendar.getInstance().get(Calendar.YEAR)
        val res:Int=year-inter
        textView.text=res.toString()
    }
}

Upvotes: 14

Views: 43877

Answers (11)

LNG C
LNG C

Reputation: 5

Just do this, i was facing the same issue. :)

    button.setOnClickListener {
        val checkUsername = userName.text.toString()
        if (checkUsername.isNullOrBlank()) {
            Toast.makeText(context, "Please enter your name", Toast.LENGTH_SHORT).show()
        } else {
            val action = UserLoginFragmentDirections.actionUserLoginFragmentToBmiFragment()
            findNavController().navigate(action)
        }

    }

Upvotes: 0

MarkT
MarkT

Reputation: 488

Same solution but using class TextUtil and .isEmpty(charsequence:)

btnGo.setOnClickListener{ 

val input1 = etName.text.toString.trim() // 1

if(TextUtils.isEmpty(input1)){ // 2
etName.error = "Enter a name" // 3
return@setOnClickListener //4
}
//code to store a Bundle or insert in a sqlitedb etc
// go to secondactiviy
}
  1. user only typed spacebars??? .trim() helps with that
  2. TextUtil is a class .isEmpty one of its methods
  3. displays a clickable red (!) in the EditText and when it is pressed displays "Enter a name" of course you can use getString(R.string.somename)
  4. restarts onclicklistener / "restricts" some actions like change to other acivity, avoinding (for example) passing null a bundle() or insert a null in a db

Upvotes: 0

Sharmad Desai
Sharmad Desai

Reputation: 61

try this out:

bottom.setOnClickListener{
  val new = addText.text.toString()

  if (new = isNotEmpty()) {
    //do something
  } else {
    Toast.makeText(context, "Enter some message ", Toast.LENGTH_SHORT).show()
  }
}

Upvotes: 4

Deep patel
Deep patel

Reputation: 11

if (regemail.isEmpty())
{
     Toast.makeText(this,"Enter Email..!!!",Toast.LENGTH_LONG).show()
}

Upvotes: 0

Tanveer
Tanveer

Reputation: 41

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val btnSignUp : Button = findViewById(R.id.signUp)

        val et_username : EditText = findViewById(R.id.etUsername)
        val et_email : EditText = findViewById(R.id.etEmail)
        val et_password : EditText = findViewById(R.id.etPassword)

        btnSignUp.setOnClickListener{
            val user_msg_error: String = et_username.text.toString()

            //check if the EditText have values or not
            if(user_msg_error.trim().isEmpty()) {
                et_username.error = "Required"
                Toast.makeText(applicationContext, "User Name Required ", Toast.LENGTH_SHORT).show()
            }
            else if (et_email.text.toString().trim().isEmpty()) {
                et_email.error = "Required"
                Toast.makeText(applicationContext, "Email Required ", Toast.LENGTH_SHORT).show()
            }
            else if (et_password.text.toString().trim().isEmpty()) {
                et_password.error = "Required"
                Toast.makeText(applicationContext, "Password Required ", Toast.LENGTH_SHORT).show()
            }
            else{
                Toast.makeText(applicationContext, "Login Successful ", Toast.LENGTH_SHORT).show()

            // After successful login u will move on next page/ activity

                val i = Intent(this,SecondActivity::class.java)
                startActivity(i)
            }

        }


    }


}

Upvotes: 3

Nikhil Katekhaye
Nikhil Katekhaye

Reputation: 2670

You can be done by below way

if (mEdtDeviceName.text.toString().trim().isNotEmpty() || 
    mEdtDeviceName.text.toString().trim().isNotBlank()) {
       // your code
} else {
    Toast.makeText(activity, "Error Msg", Toast.LENGTH_SHORT).show()
}

Upvotes: 6

Goodlife
Goodlife

Reputation: 3922

Been a new guy Tried lots and this Worked for me

     if(!editTextTerminalName.text.toString().trim().isNotEmpty()) {

                editTextTerminalName?.error = "Required"

            }else if(!editTextPassword.text.toString().trim().isNotEmpty()){


                editTextPassword?.error = "Required"
            }else{

                avi.visibility= View.VISIBLE // v letter should be capita
}

Upvotes: 0

Maraj Hussain
Maraj Hussain

Reputation: 1596

Here is the full example with explanation.

    //init the edittext
    val etMessage = findViewById(R.id.et_message) as EditText
    //init the button
    val btnClick = findViewById(R.id.btn_click) as Button

    btnClick.setOnClickListener{
        //read value from EditText to a String variable
        val msg: String = etMessage.text.toString()

        //check if the EditText have values or not
        if(msg.trim().length>0) {
            Toast.makeText(applicationContext, "Message : "+msg, Toast.LENGTH_SHORT).show()
        }else{
            Toast.makeText(applicationContext, "Please enter some message! ", Toast.LENGTH_SHORT).show()
        }
    }

Upvotes: 17

User6006
User6006

Reputation: 607

Try this:

if(TextUtils.isEmpty(editText.getText().toString())){    
    //Do
}

Upvotes: 1

Nikola Despotoski
Nikola Despotoski

Reputation: 50538

Harness Kotlin power by using inline extension functions:

editText.text.isNotEmpty().apply { 
    //do something
 }

or use let

Upvotes: 22

Lokesh Desai
Lokesh Desai

Reputation: 2677

Hey I am using like this in kotlin

 val input = editText?.text.toString().trim()
    if (input.isNullOrBlank()) {
       //Your code for blank edittext
    }

Hope this will help you..let me know if any issue....

Upvotes: 4

Related Questions