android:登录界面,输入框输入数量达到了之后自动隐藏键盘。

这篇具有很好参考价值的文章主要介绍了android:登录界面,输入框输入数量达到了之后自动隐藏键盘。。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、前言:这篇文章是关于当我们输入账号密码时,达到11位(自定义)时,自动隐藏键盘。

二、上代码:

界面布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="vertical">

    <RadioGroup
        android:id="@+id/rg_login"
        android:layout_width="match_parent"
        android:layout_height="@dimen/item_layout_height"
        android:orientation="horizontal">

        <RadioButton
            android:id="@+id/rb_password"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:checked="true"
            android:text="@string/login_by_password"
            android:textSize="@dimen/common_font_size" />

        <RadioButton
            android:id="@+id/rb_verifycode"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:text="@string/login_by_verifycode"
            android:textSize="@dimen/common_font_size" />

    </RadioGroup>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="@dimen/item_layout_height"
        android:orientation="horizontal">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:gravity="center"
            android:text="@string/phone_number"
            android:textColor="@color/black"
            android:textSize="@dimen/common_font_size" />

        <EditText
            android:id="@+id/et_phone"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginTop="5dp"
            android:layout_marginBottom="5dp"
            android:layout_weight="1"
            android:inputType="number"
            android:hint="@string/input_phone_number"
            android:maxLength="11"
            android:textColorHint="@color/gray"
            android:textSize="@dimen/common_font_size" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="@dimen/item_layout_height"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/tv_password"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:gravity="center"
            android:text="@string/login_password"
            android:textColor="@color/black"
            android:textSize="@dimen/common_font_size" />

        <RelativeLayout
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1">

            <EditText
                android:id="@+id/et_password"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_marginTop="5dp"
                android:layout_marginBottom="5dp"
                android:layout_weight="1"
                android:hint="@string/input_password"
                android:inputType="numberPassword"
                android:maxLength="11"
                android:textColorHint="@color/gray"
                android:textSize="@dimen/common_font_size" />

            <Button
                android:id="@+id/btn_forget"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_alignParentEnd="true"
                android:text="@string/foget_password"
                android:textColor="@color/black"
                android:textSize="@dimen/common_font_size" />
        </RelativeLayout>
    </LinearLayout>

    <CheckBox
        android:id="@+id/ck_remember"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/remember_password"
        android:textColor="@color/black"
        android:textSize="@dimen/common_font_size" />

    <Button
        android:id="@+id/btn_login"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/login"
        android:textSize="@dimen/buttom_font_size" />

</LinearLayout>

对应的Activity:LoginMainActivity

public class LoginMainActivity extends AppCompatActivity implements RadioGroup.OnCheckedChangeListener {

    private TextView tv_password;
    private EditText et_password;
    private Button btn_forget;
    private CheckBox ck_remember;
    private EditText et_phone;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login_main);
        RadioGroup rg_login = findViewById(R.id.rg_login);
        tv_password = findViewById(R.id.tv_password);
        et_phone = findViewById(R.id.et_phone);
        et_password = findViewById(R.id.et_password);
        btn_forget = findViewById(R.id.btn_forget);
        ck_remember = findViewById(R.id.ck_remember);
        //给rg_login设置单选监听器
        rg_login.setOnCheckedChangeListener(this);
        //给et_phone添加文本变更器
        et_phone.addTextChangedListener(new HideTextWatcher(et_phone,11));
        //给et_password添加文本变更器
        et_password.addTextChangedListener(new HideTextWatcher(et_password,6));
    }

    @Override
    public void onCheckedChanged(RadioGroup radioGroup, int i) {
        switch (i){
            //选择密码登录
            case R.id.rb_password:
                tv_password.setText(getString(R.string.login_password));
                et_password.setHint(getString(R.string.input_password));
                btn_forget.setText(getString(R.string.foget_password));
                ck_remember.setVisibility(View.VISIBLE);
                break;
                //选择验证码登录
            case R.id.rb_verifycode:
                tv_password.setText(getString(R.string.verifycode));
                et_password.setHint(getString(R.string.input_verifycode));
                btn_forget.setText(getString(R.string.get_verifycode));
                ck_remember.setVisibility(View.GONE);
                break;
        }
    }

    //定义一个编辑框监听器,在输入文本达到指定长度时自动隐藏输入法
    private class HideTextWatcher implements TextWatcher {
        private  EditText mView;
        private int mMaxLength;
        public HideTextWatcher(EditText v, int maxLength) {
            this.mView = v;
            this.mMaxLength = maxLength;

        }

        @Override
        public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {

        }

        @Override
        public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {

        }

        //在编辑框的输入文本变化后触发
        @Override
        public void afterTextChanged(Editable s) {
          //获得已输入的文本字符串
            String str = s.toString();
            if (str.length() == mMaxLength){
                //隐藏输入法软键盘
                ViewUtil.hideOneInputMethod(LoginMainActivity.this,mView);
            }
        }
    }
}

新建一个工具类:ViewUtil文章来源地址https://www.toymoban.com/news/detail-529456.html

public class ViewUtil {
    public static void hideOneInputMethod(Activity act, View v){
        //从系统服务中获取输入法管理器
        InputMethodManager imm = (InputMethodManager) act.getSystemService(Context.INPUT_METHOD_SERVICE);
        //关闭屏幕上的输入法软键盘
        imm.hideSoftInputFromWindow(v.getWindowToken(),0);
    }
}

到了这里,关于android:登录界面,输入框输入数量达到了之后自动隐藏键盘。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 中国汽车协会:我国整车出口数量达到43.8万辆,同比增长92.8%

    根据中国汽车工业协会发布的数据,今年5月份我国汽车整车出口量达到43.8万辆,较上月增长3.2%,同比增长92.8%。 同时,整车出口金额环比增长8.8%,同比增长1.2倍。而今年1-5月,汽车整车出口量达到193.3万辆,同比增长79.8%;整车出口金额同比增长1.2倍。 在我国汽车出口市场

    2024年02月12日
    浏览(62)
  • 在unity里面双击脚本文件,系统自动打开vs之后,界面上没有“解决方案资源管理器”

    在unity里面双击脚本文件,系统自动打开vs之后,界面上没有“解决方案资源管理器”,写部分代码的时候也没有提示。然后在视图里把“解决方案资源管理器”调出来之后上面也不显示这个项目 解决方法: 检查一下Unity 和 Visual Studio 有没有关联 1、打开 Unity项目 2、选择顶部

    2024年02月05日
    浏览(52)
  • Android实现简单的登录界面

    该登录界面一共实现三个功能: 1.实现登录 2.实现注册 3.实现记住密码 AndroidManifest.xml 文件: bean文件中的Account类:  db文件夹中的AccountService: db文件夹中的DataBaseHelper: MainActivity:  loginActivity registeredActivity layout文件中的activity_main layout中的login文件 layout文件中的registere

    2023年04月16日
    浏览(36)
  • Android Studio——实现登录界面

    Android Studio——实现登录界面 在移动应用开发中,登录界面是一种常见的设计需求。通过使用Android Studio,我们可以轻松实现一个简单且美观的登录界面。本文将介绍如何使用Android Studio创建一个登录界面,并提供相应的源代码。 步骤1:创建新项目 首先,打开Android Studio并创

    2024年02月08日
    浏览(27)
  • Android Studio制作简单登录界面

    应用线性布局设计登录界面,要求点击输入学号时弹出数字键盘界面,点击输入密码时弹出字母键盘,出现的文字、数字、尺寸等全部在values文件夹下相应.xml文件中设置好,使用时直接引用。当用户名或密码为空,显示一个提示信息“用户名与密码不能为空!”,当用户名和

    2024年04月15日
    浏览(40)
  • elementUi upload上传达到limit后隐藏upload图标

    如题所述,我们项目要求上传控件最大只允许上传3张。当数量达到的时候,自动隐藏上传按钮控件。而当点击删除之前的照片后,又重新显示上传按钮控件。 这里我们选用了饿了么的elementUi里的el-upload控件作为基础,再添加我们的需求。 主要的templete如下 而对应的style如下

    2024年02月16日
    浏览(35)
  • Android学习(一)--用户登录注册界面(界面跳转+背景音乐)

    目录 1.功能要求 2.功能实现流程图 3.功能演示 4.界面与功能  4.1登录界面 4.1.1界面展示 4.1.2登录界面功能简介 4.1.3界面代码 4.1.4登录按钮点击事件 4.1.5退出按钮点击事件  4.1.6背景音乐点击事件 4.1.7记住密码 5.Java源码 (1)三个界面布局,体现文本框、编辑框、单选按钮、复

    2024年02月05日
    浏览(35)
  • Android studio编写一个简单的登录界面

    1首先先创建一个空的activity项目,接着设置自己的项目名称,勾选上lacuncher 创建成功后点开 manifests 把刚刚创建的文件名下面的 intent-filter 这一行全部删除 然后点开res,复制一张图片,右键drawable点击粘贴,这里放的是图片资源,用于放置登录头像 然后点开layout文件,开始编

    2024年04月15日
    浏览(29)
  • 【Selenium+python】自动化测试登录界面

    前言:已经学习selenium许久了,奈何公司的项目还在码代码中...,感觉自己学的东西快忘的差不多了,所以就找个网站练练手,顺便回顾一下UI自动化的知识,也希望跟我一样的小白有所受益。 用例1: 正确输入手机号和密码,点击登录 期望:有帮助中心字样(系统跳至首页

    2024年02月08日
    浏览(43)
  • 用Android Studio编写一个登录界面和注册界面并可以跳转

    下面是使用 Android Studio 编写一个简单的登录界面和注册界面,并实现跳转的示例代码。 首先,在 res/layout 目录下创建一个名为 activity_login.xml 的布局文件,作为登录界面的布局: 接下来,在 res/layout 目录下创建一个名为 activity_register.xml 的布局文件,作为注册界面的布局:

    2024年04月09日
    浏览(70)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包