Как сделать autocomplete то есть поле ввода, после ввода в которое предлагается схожий текст. Что использовать?
Создайте XML
-файл с именем list_item.xm
l и сохраните его в папке Resources/Layout
. Установите действие сборки этого файла в AndroidResource
. Измените файл так, чтобы он выглядел следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:textSize="16sp"
android:textColor="#000">
</TextView>
Этот файл определяет простой TextView
, который будет использоваться для каждого элемента, который появляется в списке.
Откройте Resources/Layout/Main.axml
и вставьте следующее
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="5dp">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Country" />
<AutoCompleteTextView android:id="@+id/autocomplete_country"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"/>
</LinearLayout>
Откройте MainActivity.cs
и вставьте следующий код для метода OnCreate ()
protected override void OnCreate (Bundle bundle)
{
base.OnCreate (bundle);
SetContentView (Resource.Layout.Main);
AutoCompleteTextView textView =
FindViewById<AutoCompleteTextView> (Resource.Id.autocomplete_country);
var adapter =
new ArrayAdapter<String> (this, Resource.Layout.list_item, COUNTRIES);
textView.Adapter = adapter;
}
После того, как представление содержимого будет установлено в макете main.xml
, виджет AutoCompleteTextView
будет захвачен из макета с помощью FindViewById
. Затем инициализируется новый ArrayAdapter
для привязки макета list_item.xml
к каждому элементу списка в массив строк COUNTRIES
. Наконец, SetAdapter()
вызывается, чтобы связать ArrayAdapter
с виджетами AutoCompleteTextView
, чтобы массив строк заполнил список.
Внутри класса MainActivity
добавьте массив строк
static string[] COUNTRIES = new string[]
{
"Afghanistan", "Albania", "Algeria", "American Samoa",
"Andorra","Angola", "Anguilla", "Antarctica", "Antigua and Barbuda",
"Argentina","Armenia", "Aruba", "Australia", "Austria",
"Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium","Belize",
"Benin", "Bermuda", "Bhutan", "Bolivia",
"Bosnia and Herzegovina", "Botswana","Brazil",
"British Indian Ocean Territory","British Virgin Islands",
"Brunei", "Bulgaria", "Burkina Faso", "Burundi","Cote d'Ivoire",
"Cambodia", "Cameroon", "Canada", "Cape Verde",
"Cayman Islands","Central African Republic", "Chad",
"Chile", "China","Christmas Island", "Cocos (Keeling) Islands",
"Colombia", "Comoros","Congo"
};
Читайте тут про Autocomplete Text View
Для Xamarin.Forms
можете читать книгу
Mark Reynolds "Xamarin Essentials"
от страници 157.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
У меня есть проект на C#, но некоторые его части написанны python 35
Как можно отловить нажатие на браузер ? даже в пустое место ? Пока использую метод webBrowser1_DocumentCompleted , но он работает только, если я спровоцирую...
Нужно првоерить открыт ли сейчас файл в других процессах