Документация
ОС Аврора 5.1.5

QML-тип SearchField

Текстовое поле для ввода поискового запроса. Подробнее…

Строка импорта: import Sailfish.Silica 1.0
Наследуется от: TextField

Свойства

Подробное описание

Тип SearchField отображает поле поиска — одну строку редактируемого текста вместе со значком поиска и кнопкой, которая очищает введенный текст.

Ниже приведён пример с полем поиска, расположенным в заголовке страницы:

import QtQuick 2.2
import Sailfish.Silica 1.0

SilicaListView {
    property alias searchField: headerItem

    anchors.fill: parent

    header: SearchField {
        width: parent.width
        placeholderText: "Искать"

        onTextChanged: {
            listModel.update()
        }
    }

    // предотвращает перемещение фокуса с поля поиска на вновь создаваемые делегаты списка
    currentIndex: -1

    model: ListModel {
        id: listModel
        property var continents: ["Африка", "Антарктида", "Азия", "Европа", "Северная Америка", "Океания", "Южная Америка"]

        function update() {
            clear()
            for (var i=0; i<continents.length; i++) {
                if (searchField.text == "" || continents[i].indexOf(searchField.text) >= 0) {
                    append({"name": continents[i]})
                }
            }
        }

        Component.onCompleted: update()
    }

    delegate: ListItem {
        Label {
            anchors {
                left: parent.left
                leftMargin: searchField.textLeftMargin
                verticalCenter: parent.verticalCenter
            }
            text: name
        }
    }
}

Тип SearchField наследуется от TextField, поэтому свойство text можно использовать для доступа к введенному тексту.

Следует обратить внимание, что свойство textLeftMargin относится к положению текста внутри поля поиска. Поэтому вводимый в поле поиска текст можно использовать в качестве ориентира для выравнивания относительно него других элементов, например, элементов списка при фильтрации.

См. также TextField.

Описание свойств

active : bool

True, если поле поиска активно. Установка этого значения в false установит opacity как 0 и visible как false, уменьшит height до 0 и очистит текст для поиска.

Следует обратить внимание, что это свойство изменяется полем поиска (и, таким образом, любая привязка очищается), когда пользователь нажимает кнопку «Скрыть».

Значение по умолчанию: true.

canHide : bool

True, если в поле поиска должна отображаться кнопка «Скрыть», когда текст для поиска пуст.

Если это свойство имеет значение true, кнопка «Очистить» поля поиска (которая обычно очищает текст поиска при нажатии) изменится на иконку «Скрыть», когда текст для поиска пуст. И если кнопка нажата в этом состоянии, то свойство active будет установлено как false, и поле поиска будет скрыто из видимости.

transitionDuration : int

Продолжительность анимации (в миллисекундах), которая запускается при переходе поля поиска между активным и неактивным состояниями.

Значение по умолчанию равно 200.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.