Android edittext我们如何知道用户输入的是电话还是电子邮件

标签 android

[登录 Activity ]

我是 Android 应用程序开发的新手。 我正在开发安卓应用程序。 用户可以使用电子邮件 ID 或手机号码登录,例如 facebook 登录。 我们如何知道用户输入的是电子邮件还是手机。 请帮我。 验证是他们在 android api 中工作的任何验证框架,如密码、电子邮件 ID 手机、无模式匹配器等,请帮助我。

<EditText
    android:layout_width="wrap_content"
    android:layout_height="50dp"
    android:inputType="text"
    android:ems="10"
    android:id="@+id/etUserName"
    android:layout_marginTop="90dp"
    android:hint="Enter Email id/Mobile no"
    android:textColorHint="#4d060505"
    android:background="@drawable/edittext_bg"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_marginLeft="20dp"
    android:layout_marginRight="20dp"
    android:layout_alignParentStart="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:gravity="center">
    <requestFocus/>
</EditText>

<EditText
    android:layout_width="wrap_content"
    android:layout_height="50dp"
    android:inputType="textPassword"
    android:layout_marginLeft="20dp"
    android:layout_marginRight="20dp"
    android:ems="10"
    android:id="@+id/etPwd"
    android:hint="Password"
    android:textColorHint="#4d060505"
    android:layout_marginBottom="5dp"
    android:layout_marginTop="10dp"
    android:background="@drawable/edittext_bg"
    android:layout_below="@+id/etUserName"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:gravity="center"/>

这段代码非常适合我。 根据你的建议,我试过了。

if(isEmailValid(登录名)){ Toast.makeText(getApplicationContext(), "Email", Toast.LENGTH_LONG).show(); }否则如果(isValidMobileNumber(登录名)){ Toast.makeText(getApplicationContext(), "mobileNo", Toast.LENGTH_LONG).show(); }别的{ Toast.makeText(getApplicationContext(), "输入邮箱或手机号码", Toast.LENGTH_LONG).show(); }

最佳答案

尝试电子邮件

boolean isEmailValid(CharSequence email) {
 return android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches();
}

如果您的Edittext 值返回 true 而不是它的 Email else Mobile number

关于Android edittext我们如何知道用户输入的是电话还是电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36277285/

相关文章:

java - 如何在(Expandable)ListAdapter下设置ImageView的色调?

Android java binder 失败 BINDER TRANSACTION?

java - 当应用程序从主屏幕关闭 Android 中的多任务按钮时会调用哪个事件

android 使用 START_STICKY 启动前台服务

java - 在 Android 项目中声明通用 Java 类

Android,无法解析方法 getMap()

Android - 在 sleep 中运行应用程序,每 N 秒轮询一次

Android Gradle Plugin 4.1.0 自动授予位置权限

android - RemoteViews 支持的方法

android - 为什么 clang 将 NULL 定义为 __null?