Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Android

Cách tạo EditText chỉ chấp nhận chữ cái trong Android

Giới thiệu

Ví dụ này minh họa cách giới hạn EditText chỉ cho phép nhập ký tự chữ cái (A-Z, a-z) và khoảng trắng, sử dụng InputFilter.

Các bước thực hiện

Bước 1: Tạo dự án mới

Mở Android Studio, chọn File → New Project và điền thông tin cần thiết.

Bước 2: Layout (activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <EditText
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:hint="Nhập văn bản ở đây" />
</RelativeLayout>

Bước 3: Code logic (MainActivity.java)

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.InputFilter;
import android.text.Spanned;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {
    EditText editText;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        editText = findViewById(R.id.editText);
        editText.setFilters(new InputFilter[]{new InputFilter() {
            @Override
            public CharSequence filter(CharSequence charSequence, int start, int end, Spanned dest, int etStart, int etEnd) {
                if (charSequence.equals("")) {
                    return charSequence;
                }
                if (charSequence.toString().matches("[a-zA-Z ]+")) {
                    return charSequence;
                }
                return "";
            }
        }});
    }
}

Bước 4: Manifest (AndroidManifest.xml)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android" package="app.com.sample">
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

Chạy ứng dụng

Kết nối thiết bị, nhấn Run. Thử nhập số hoặc ký tự đặc biệt - chúng sẽ bị chặn.

Cách tạo EditText chỉ chấp nhận chữ cái trong Android

Cách tạo EditText chỉ chấp nhận chữ cái trong Android

Cách tạo EditText chỉ chấp nhận chữ cái trong Android