Tạo viền cho EditText trong Android studio

Trong lập trình ứng dụng một widget không thể thiếu đó là Text box, trong android gọi là EditText. EditText sử dụng cho phép người dùng nhập thông tin để ứng dụng xử lý dưới dạng các text box.

Tạo viền cho EditText trong Android studio

EditText kế thừa từ TextView. Do đó, một EditText kế thừa tất cả thuộc tính của TextView

Control này kế thừa từ TextView và cho phép chỉnh sửa dữ liệu (dĩ nhiên chúng ta có thể cấm

Tạo viền cho EditText trong Android studio
chỉnh sửa dữ liệu bằng coding hay trong xml). Để sử dụng EditText rất đơn giản, chúng ta chỉ việc kéo thả control này vào giao diện và tiến 

Các Text Fields trong Eclipse IDE cơ bản là EditText

Tạo viền cho EditText trong Android studio
 

Chúng ta có thể tạo một EditText trong tập tin XML hoặc khởi tạo EditText trong code Java

Code EditText trong XML

Truy xuất / Lấy giá trị từ EditText Trong Java Class:Dưới đây là mã ví dụ của EditText trong đó chúng tôi lấy ra giá trị từ một EditText trong lớp Java. Chúng tôi đã sử dụng mã này trong ví dụ bạn sẽ tìm thấy ở cuối bài đăng này.

EditText txtFirstName= (EditText) findViewById(R.id.edtFirstName); String editTextValue = txtFirstName.getText().toString();

Thuộc tính thường dùng của EditText

Bây giờ chúng xem một số thuộc tính hay sử dụng trong EditText trong tập tin XML

1. android:id: Là thuộc tính duy nhất của EditText. Xem ví dụ sau:

Dựa vào Id ta sẽ lấy được control theo đúng Id này, xem code bên dưới để biết cách lấy control theo Id:

EditText simpleEditText = (EditText) findViewById(R.id.simpleEditText); String editTextValue = simpleEditText.getText().toString();

2. android:gravity: Thuộc tính này thường sử dụng để canh nội dung trên EditText: left, right, center, top, bottom, center_vertical, center_horizontal

Tạo viền cho EditText trong Android studio

3. android:text: Thuộc tính này dùng xuất chuỗi văn bản lên EditText, Chúng ta có thể khai báo trong XML hoặc code Java.

Tạo viền cho EditText trong Android studio

Gán nội dung cho  EditText trong Java class:

EditText editText = (EditText)findViewById(R.id.simpleEditText); editText.setText("Username");//set the text in edit text

4. android:hint: Thuộc tính hint để hiển thị thông tin gợi ý trong vùng nhập dữ liệu khi bạn chưa nhập bất kỳ dữ liệu nào vào, chỉ cần có dữ liệu là phần hint sẽ tự động mất đi.

Tạo viền cho EditText trong Android studio

Gán hint cho EditText trong Java class:

EditText editText = (EditText)findViewById(R.id.simpleEditText); editText.setHint("Enter Your Name Here");//display the hint

5. android:textColor: Thuộc tính này dùng xác định màu chữ, dạng màu chữ: “#argb”, “#rgb”, “#rrggbb”, hoặc “#aarrggbb”. Vi dụ sau set chữ trong EditText màu đỏ.

Tạo viền cho EditText trong Android studio

Set thuộc tính textColor cho EditText trong Java class:

EditText simpleEditText=(EditText)findViewById(R.id.simpleEditText); simpleEditText.setTextColor(Color.RED);//set the red text color

6. android:textColorHint: là thuộc tính set màu cho hint.

EditText android:id="@+id/simpleEditText" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" android:hint="Enter Your Name Here" android:textColorHint="#0f0"/>

Tạo viền cho EditText trong Android studio

Set thuộc tính textColorHint cho EditText trong Java class:

EditText simpleEditText=(EditText)findViewById(R.id.simpleEditText); simpleEditText.setHintTextColor(Color.green(0));//set the green hint color

7. android:textSize: Thuộc tính textSize xác định kích thước văn bản của EditText. Chúng ta có thể đ8ạ kích thước văn bản theo sp(scale independent pixel) hoặc dp(density pixel). Trong ví dụ này chúng ta xác định kich thước cho văn bản là 40sp.

Tạo viền cho EditText trong Android studio

Set thuộc tính textSize cho EditText trong Java class:

EditText simpleEditText=(EditText)findViewById(R.id.simpleEditText); simpleEditText.setTextSize(25);//set size of text

7. android:textStyle: Thuộc tính xác định loại văn bản của EditText, thông thường có các loại văn bản:bold, italic và normal. Nếu chúng ta muốn sử nhiều hơn một loại văn bản thì phải thêm phép toán hoặc "|" vào giữa các loại văn bản:

Tạo viền cho EditText trong Android studio

8. android:background: Thuộc tính này xác định màu nền cho EditText

9. android:padding: Thuộc tính này xác định khoảng cách từ đường viền của EditText với nội dung nó chứa: left, right, top or bottom. Cũng ví dụ trên bây giờ chúng ta xác định padding=10sp từ mọi phía của EditText

Tạo viền cho EditText trong Android studio

Set thuộc tính Background cho EditText trong Java class:

EditText simpleEditText=(EditText)findViewById(R.id.simpleEditText); simpleEditText.setBackgroundColor(Color.BLACK);//set black background color

10. android:inputType: Định dạng kiểu văn bản khi người dùng nhập vào(kiểu mật khẩu, kiểu số, kiểu email, phone, …).Trong ví dụ sau EditText chỉ được nhập số. Chúng ta thêm thuộc tính android:inputType="number"
11. android:maxLines: Cho phép người dùng nhập tối đa bao nhiêu dòng. 

Tạo viền cho EditText trong Android studio

Ví dụ: Trong ví dụ này chúng ta sẽ lấy giá trị từ các EditText, sau đó hiển thị các giá trị này lên TextView thông qua một button được lập trình xử lý sự kiện trong Java Class (Button chúng ta sẽ tìm hiểu ở trang tiếp theo).  Tiến hành tạo project, vào thư mục  res /layout -> activity_main.xml  thiết kế giao diện sau:

Tạo viền cho EditText trong Android studio

Bước 1: Tạo một project tên là TextView: File->New->Android Application Project điền các thông tin ->Next ->Finish

Bước 2: Mở res -> layout -> xml (hoặc) activity_main.xml , trong xml này chúng ta thêm nhiều TextView EditText và một Button có sự kiện onClick trong  Table Layout.