android设置EditText内容不可编辑和点击事件

一、设置内容不可编辑

设置EditText内容不可编辑分两种情况:

1,不可编辑且需要获取焦点

android:cursorVisible="false"//不显示光标
android:editable="false"//不可编辑
android:inputType="none"//不弹出软键盘
android:textIsSelectable="false"//不可编辑状态下文字不可选

2,不可编辑且不需要获取焦点

android:focusable="false"
android:focusableInTouchMode="false"

二、点击事件

  1. setOnTouchListener:该方法是用于监听用户触摸事件的方法。当用户触摸EditText时,该方法会被触发,并返回一个boolean值,表示是否消耗该事件。通常情况下,我们可以在该方法中实现一些自定义的触摸事件处理逻辑,例如处理滑动、拖拽、长按等操作。

  2. setOnClickListener:该方法是用于监听用户点击事件的方法。当用户点击EditText时,该方法会被触发,并执行相应的代码逻辑。通常情况下,我们可以在该方法中实现一些点击事件处理逻辑,例如显示菜单、弹出对话框等操作。

  3. setOnFocusChangeListener:该方法是用于监听焦点事件的方法。当EditText获取或失去焦点时,该方法会被触发,并执行相应的代码逻辑。通常情况下,我们可以在该方法中实现一些焦点事件处理逻辑,例如隐藏或显示软键盘、保存用户输入等操作。

EditText editText = (EditText)findViewById(R.id.edit);
editText.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) {
                Log.d(TAG,"触摸了,触摸了,触摸了");
                return false;
            }
        });
editText.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Log.d(TAG,"点击了,点击了,点击了");
            }
        });
editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
            @Override
            public void onFocusChange(View view, boolean b) {
                
            }
        });

你可能感兴趣的:(android,android)