Zero to Kotlin Hero: Знакомство с библиотекой Anko

Давайте взглянем на библиотеку Anko, библиотеки Beyonce of Kotlin для Android. Не судите меня, это мое мнение (смеется).

Библиотека Anko — это библиотека Android, написанная и поддерживаемая JetBrains. Anko помогает вам работать быстрее и эффективнее при создании приложений для Android.

Из того, что я понял, на приведенном выше рисунке показано, как появилось название Anko .

Anko состоит из четырех частей:

  1. Anko Commons
  2. Макеты Anko
  3. Anko SQLite
  4. Anko Coroutines

Чтобы добавить зависимость для Anko в свой проект, просто перейдите к сборке на уровне проекта .gradle файл и добавьте это:

 buildscript {... ext.anko_version = '0.10.8'//эта новая строка репозиториев {...} зависимостей {...}} 

Вы должны добавить в свой проект последнюю стабильную версию Anko. На момент написания этой статьи последняя версия была 0.10.8 .

После этого перейдите к сборке уровня приложения . gradle для добавления зависимости Anko.

 ... зависимости {реализация "org.jetbrains.anko: anko: $ anko_version"} 

Если вам не нужна вся библиотека, вы можете просто установить нужные модули.

 ... dependencies {//Реализация сообщества Anko "org.jetbrains.anko: anko-commons: $ anko_version"// Реализация закусок "org.jetbrains.anko: anko-design: $ anko_version"//Реализация Anko sqlite  entation "org.jetbrains.anko: anko-sqlite: $ anko_version"//Реализация Anko Coroutines "org.jetbrains.anko: anko-coroutines: $ anko_version"//Реализация Anko Layouts "org.jetbrains. anko: anko-sdk25: $ anko_version "implementation" org.jetbrains.anko: anko-appcompat-v7: $ anko_version "//Слушатели сопрограмм для реализации макетов Anko" org.jetbrains.anko: anko-sdk25-coroutines: $ anko_version "  реализация "org.jetbrains.anko: anko-appcompat-v7-coroutines: $ anko_version"} 
путь>

Общество Anko

Anko commons — это легкая библиотека, которая содержит множество помощников для Android SDK.

Anko commons содержит помощники для намерений, диалогов и тостов, ведения журнала, ресурсов и измерений .

Anko Commons для намерений

Anko Commons можно использовать для явных или неявных намерений.

С обычным кодом Kotlin Android, вы можете перейти от одного действия к другому (например, SecondActivity ), выполнив:

  val intent = Intent (this, SecondActivity :: class.java) startActivity (intent) 

С Anko это сделано способ:

 startActivity  () 

Вот и все!

Вы также можете передать данные при запуске намерений:

//Anko versionstartActivity  (от "firstname" до "Nenne", "surn  ame "на" Nwodo ") 

В обычном Kotlin та же команда была бы более подробной:

//Нормальное намерение версии Kotlin  = Intent (this, SecondActivity :: class.java) intent.putExtra ("firstname", "Nenne") intent.putExtra ("surname", "Nwodo") startActivity (intent) 

Anko сократил четыре строки до одной.

Давайте также попробуем открыть ссылку во внешнем браузере.. Используя код Kotlin по умолчанию, у нас будет три строки:

 val intent = Intent (Intent.ACTION_VIEW) intent.data = Uri.parse ("https://adoranwodo.com") startActivity (намерение) 

Давайте обратимся к магу Анко, чтобы он изменил это. Теперь у нас будет:

 browse ("https://adoranwodo.com") 

У Anko есть другие оболочки для намерений; Я перечислю их ниже. Эти методы возвращают логические значения. Если намерение было отправлено, возвращается true ; в противном случае возвращается false .

Если вы хотите позвонить, вы можете просто позвонить:

 makeCall (число) 

Если вы хотите отправить текст:

 sendSMS (number, [text])//[text] необязательно 

Если вы хотите поделиться текстом:

 share (text, [subject])//[subject] необязательно 

Если вы хотите отправить электронное письмо:

 email (email, [тема], [текст])//[тема] и [текст] необязательны 

Anko commons для диалогов и тостов

Как мы установили, Anko делает код короче и читабельнее, когда речь идет о намерениях.. При использовании синтаксиса по умолчанию мы можем запускать всплывающие сообщения следующим образом:

Toast.makeText(this, «Привет!», Toast.LENGTH_SHORT) .show () 

Однако с помощью Anko мы можем запустить то же сообщение следующим образом:

 тост ("Привет!") 

Anko также имеет метод longToast () , если мы хотим, чтобы продолжительность всплывающего сообщения была больше.

Точно так же, если мы хотим показать закусочная с использованием Anko, все, что нам нужно сделать, это:

 view.snackbar ("Привет!") 
путь>

Отображение предупреждений с использованием Anko commons

Использование AlertDialog в Android может стать беспорядочным, когда вам нужно вызвать setTitle () , setMessage () , create () и т. д.

По умолчанию создание диалогового окна с предупреждением может быть выполнено с использованием синтаксиса ниже:

 val alerttdialog = AlertDialog.Builder (this) alerttdialog.setTitle (  «Привет») alerttdialog.setMessage («Добро пожаловать в этот раздел, вы хотите продолжить?») Alerttdialog.setPositiveButton («Хорошо») {_  , _ -> Toast.makeText (это, «Спасибо, что нажали« да ».», Toast.LENGTH_SHORT) .show ()} alerttdialog.setNegativeButton («Отмена») {_, _ -> Toast.makeText (this, «Мы  грустно, что вы нажали "нет" ", Toast.LENGTH_SHORT) .show ()} alerttdialog.create (). show ()//Расстраивающая часть.  Если вы забудете это, ваше диалоговое окно не будет отображаться 

Однако Anko упростил нам задачу, дав нам возможность для этого:

 alert («Добро пожаловать в этот раздел, вы хотите продолжить?», «Привет») {yesButton {toast («Спасибо, что нажали« да ».»)} noButton {toast («Нам грустно, что вы нажали« нет ».  )}}. show () 

Мне версия Anko кажется чище 🤷🏼‍♀️.

В следующей статье мы рассмотрим ведение журнала, ресурсы и размеры. До встречи!

Оцените статью
nanomode.ru
Добавить комментарий