Computer >> Máy Tính >  >> Lập trình >> Android

Làm thế nào để đặt Bộ điều hợp thành chế độ xem Văn bản Tự động Hoàn thành?

Trước khi đi vào ví dụ, chúng ta nên biết textview tự động hoàn thành trong android là gì. Autocomplete textview cũng giống như một văn bản chỉnh sửa và nó là một lớp con của editext, nhưng nó sẽ hiển thị gợi ý từ một danh sách dưới dạng danh sách thả xuống. Chúng tôi phải thiết lập giá trị Ngưỡng để chế độ xem văn bản tự động hoàn thành. ví dụ:chúng tôi đã thiết lập Ngưỡng là 1, vì vậy nếu người dùng nhập một ký tự sẽ đưa ra đề xuất theo ký tự Ngưỡng.

Ví dụ này trình bày về cách thiết lập bộ điều hợp để tự động hoàn thành Textview.

Bước 1 - Tạo một dự án mới trong Android Studio, đi tới Tệp ⇒ Dự án Mới và điền tất cả các chi tiết cần thiết để tạo một dự án mới.

Bước 2 - Thêm mã sau vào res / layout / activity_main.xml .

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
   xmlns:app="https://schemas.android.com/apk/res-auto"
   xmlns:tools="https://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:gravity="center"
   android:orientation="vertical"
   tools:context=".MainActivity">
   <AutoCompleteTextView
      android:id="@+id/autoComplete"
      android:layout_width="fill_parent"
      android:hint="Enter programming language"
      android:layout_height="wrap_content" />
</LinearLayout>

Ở trên, chúng tôi đã khai báo chế độ xem văn bản tự động hoàn thành, khi người dùng nhập một bức thư, nó sẽ hiển thị danh sách dưới dạng đề xuất trong trình đơn thả xuống.

Bước 3 - Thêm mã sau vào src / MainActivity.java

package com.example.andy.myapplication;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.Toast;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
   RadioButton radioButton;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      final AutoCompleteTextView autoCompleteTextView=findViewById(R.id.autoComplete);
      ArrayList arrayList=new ArrayList<>();
      arrayList.add("Android");
      arrayList.add("JAVA");
      arrayList.add("CPP");
      arrayList.add("C Programming");
      arrayList.add("Kotlin");
      arrayList.add("CSS");
      arrayList.add("HTML");
      arrayList.add("PHP");
      arrayList.add("Swift");
      ArrayAdapter arrayAdapter=new ArrayAdapter(this, android.R.layout.simple_dropdown_item_1line, arrayList);
      autoCompleteTextView.setAdapter(arrayAdapter);
      autoCompleteTextView.setThreshold(1);
      autoCompleteTextView.addTextChangedListener(new TextWatcher() {
         @Override
         public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            Log.d("beforeTextChanged", String.valueOf(s));
         }
         @Override
         public void onTextChanged(CharSequence s, int start, int before, int count) {
            Log.d("onTextChanged", String.valueOf(s));
         }
         @Override
         public void afterTextChanged(Editable s) {
            Log.d("afterTextChanged", String.valueOf(s));
         }
      });
   }
}

Trong đoạn mã trên, chúng tôi đã lưu trữ một số giá trị trong ArrayList và thêm ArrayList vào bộ điều hợp mảng. Chúng tôi đã đặt bộ điều hợp thành chế độ xem văn bản tự động hoàn thành và thêm ngưỡng là 1. Hãy thử chạy ứng dụng của bạn. Tôi giả sử bạn đã kết nối thiết bị Di động Android thực tế với máy tính của mình. Để chạy ứng dụng từ một studio android, hãy mở một trong các tệp hoạt động của dự án của bạn và nhấp vào biểu tượng Run từ thanh công cụ. Chọn thiết bị di động của bạn làm tùy chọn, sau đó kiểm tra thiết bị di động sẽ hiển thị màn hình mặc định của bạn -

Làm thế nào để đặt Bộ điều hợp thành chế độ xem Văn bản Tự động Hoàn thành?

Ban đầu, nó sẽ hiển thị màn hình như trên và nhập ja vào textview đó, nó sẽ hiển thị kết quả từ bộ điều hợp như hình dưới đây-

Làm thế nào để đặt Bộ điều hợp thành chế độ xem Văn bản Tự động Hoàn thành?

Trong kết quả trên, chúng ta chỉ có một gợi ý, Xóa J và nhập c vào dạng xem văn bản đó, nó sẽ hiển thị nhiều đề xuất như hình dưới đây -

Làm thế nào để đặt Bộ điều hợp thành chế độ xem Văn bản Tự động Hoàn thành?