Подтвердить что ты не робот

Как установить edittext, чтобы показать кнопку поиска или ввести кнопку на клавиатуре?

Как установить EditText, чтобы показать кнопку поиска или ввести кнопку на клавиатуре?

4b9b3361

Ответ 1

Используйте код для редактирования атрибута EditText

<EditText android:imeOptions="actionSearch" />

Затем сделайте это в своем коде Java:

editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_SEARCH) {
            performSearch();
            return true;
        }
        return false;
    }
});

Ответ 2

В вашем макете установите метод ввода для опции поиска

 <EditText 
  android:imeOptions="actionSearch"
  android:inputType="text"/>

и в java-коде использовать

editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_SEARCH) {
            performSearch();
            return true;
        }
        return false;
    }
});

Ответ 3

  android:singleLine="true"
  android:imeOptions="actionSearch"

Ответ 4

В следующей процедуре описано, как настроить AutoCompleteTextView, который предоставляет предложения из массива, используя ArrayAdapter:

1 - Добавьте AutoCompleteTextView в свой макет. Здесь макет с только текстовым полем:

<?xml version="1.0" encoding="utf-8"?>
<AutoCompleteTextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/autocomplete_country"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" />

2 - Определите массив, содержащий все текстовые предложения. Например, здесь массив имен стран, определенных в файле ресурсов XML (res/values ​​/strings.xml):

    <?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="countries_array">
        <item>Afghanistan</item>
        <item>Albania</item>
        <item>Algeria</item>
        <item>American Samoa</item>
        <item>Andorra</item>
        <item>Angola</item>
        <item>Anguilla</item>
        <item>Antarctica</item>
        ...
    </string-array>
</resources>

3 - В своей деятельности или фрагменте используйте следующий код, чтобы указать адаптер, который предоставляет предложения:

// Get a reference to the AutoCompleteTextView in the layout
AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_country);
// Get the string array
String[] countries = getResources().getStringArray(R.array.countries_array);
// Create the adapter and set it to the AutoCompleteTextView 
ArrayAdapter<String> adapter = 
        new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, countries);
textView.setAdapter(adapter);

Здесь новый ArrayAdapter инициализируется для привязки каждого элемента в массиве строк COUNTRIES к TextView, который существует в макете simple_list_item_1 (это макет, предоставляемый Android, который обеспечивает стандартный внешний вид для текста в списке). Затем назначьте адаптер AutoCompleteTextView, вызвав setAdapter().

Ответ 6

Сделайте ваш текст редактирования таким.

    <EditText
        android:id="@+id/s_search"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textColor="#000"
        android:textSize="15dp"
        android:imeOptions="actionSearch"
        android:inputType="text"
        android:hint="Enter search" />