понедельник, 19 сентября 2022 г.

Использование библиотеки Alerter.

 Приветствую читатель. В статье речь пойдет об еще одной библиотеке, которую можно использовать в своих проектах, разрабатываемых в Sketchware pro.



Alerter - библиотека оповещений для Android. Посмотреть на работу библиотеку можно скачав и установив демку по ссылке (Yandex.disk).

  • Ссылка: Alerter ( Yandex.disk)
  • Автор: Tapadoo ( GitHub )
  • Версия: 7.2.4
  • Api level: 14+
  • Лицензия: MIT
  • Назначение: служит для отображения различных уведомлений с настраиваемым внешним видом.
  • Язык: написана на Kotlin ( для использования в проекте на java необходимо дополнительно подключить библиотеку Kotlin JVM. Скачать можно по ссылке: Kotlin JVM (Yandex.disk) )

Общая информация

С учетом простоты, Alerter использует шаблон builder для упрощения интеграции в любое приложение. Настраиваемый вид оповещения динамически добавляется в декоративный вид окна, перекрывая все содержимое.

Установка

Добавьте эту зависимость в файл build.gradle вашего приложения com.github.tapadoo:alerter:7.2.4. Как импортировать библиотеку в Sketchware pro а рассказывал ранее. На картинке показана последовательность действий. Либо добавить библиотеку вручную. Для этого папку с библиотекой (ссылка на яндекс.диск выше) положить по пути: .sketchware/libs/local_libs/ (если в каталоге вы не видите такой папки - включите отображение скрытых файлов в настройках своего файлового менеджера) и поставьте галочку в "менеджере локальных библиотек". Дополнительные файлы (два файла шрифтов и рингтон в формате mp3) можно скачать по ссылке. Не забудьте так же положить в директорию дополнительную библиотеку, ссылка выше. Все отрывки кода помещаем в блок ASD (зеленая ветка operator).

Подключаем библиотеку

Использование

По умолчанию:

Alerter.create(MainActivity.this)//на каком экране мы будем показывать уведомление. Тут указываем то, которое необходимо

                .setTitle(“Заголовок”) //текст заголовка уведомления

                .setText("Текст уведомления...")//текст уведомления

                .show();//метод вызывает запуск уведомления

Используем разные цвета фона уведомления:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомления")

               .setBackgroundColorRes(com.tapadoo.alerter.demo.R.color.colorAccent)

               .show();

Другая иконка:

Alerter.create(MainActivity.this)

                .setText("Текст уведомление")                                           .setIcon(com.tapadoo.alerter.demo.R.drawable.alerter_ic_mail_outline)//указываем какое изображение будет использоваться

                .setIconColorFilter(0) // Опционально можно применить цветовой фильтр. Можно удалить

                .setIconSize(R.dimen.custom_icon_size) // Опционально - установить размер иконки, по умолчанию - 38dp.

                .show();

Только текст, без заголовка:

Alerter.create(MainActivity.this)

                .setText("только текст уведомления")

                .show();

Событие при нажатии на уведомление:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомления")

                .setDuration(10000)//указываем длительность отображения сообщения

                .setOnClickListener(new View.OnClickListener() {

                    @Override

                    public void onClick(View view) {

                        Toast.makeText(MainActivity.this, "Нажато", Toast.LENGTH_LONG).show();

                    }

                })

                .show();

Много текста:

Alerter.create(MainActivity.this)

                .setTitle("Руслан и Людмила")

                .setText("У лукоморья дуб зеленый. " +

                        "Златая цепь на дубе том." +

                        "И днем и ночью кот ученый." +

Всё ходит по цепи кругом”)

                .show();

События – уведомление показано, уведомление скрыто:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомления")

                .setDuration(10000)//продолжительность отображения

                .setOnShowListener(new OnShowAlertListener() {

                    @Override

                    public void onShow() {

                        Toast.makeText(MainActivity.this, "Показано уведомление", Toast.LENGTH_LONG).show();

                    }

                })

                .setOnHideListener(new OnHideAlertListener() {

                    @Override

                    public void onHide() {

                        Toast.makeText(MainActivity.this, "уведомление скрыто", Toast.LENGTH_LONG).show();

                    }

                })

                .show();

Уведомление отображается пока не нажмешь:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомления")

                .enableInfiniteDuration(true)

                .show();

ПрогрессБар в уведомлении:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомления")

                .enableProgress(true)

                .setProgressColorRes(com.tapadoo.alerter.demo.R.color.colorPrimary)

                .show();

Используем сторонний шрифт:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setTitleAppearance(com.tapadoo.alerter.demo.R.style.AlertTextAppearance_Title)

                .setTitleTypeface(Typeface.createFromAsset(getAssets(), "Pacifico-Regular.ttf"))

                .setText("Текст уведомление")

                .setTextAppearance(com.tapadoo.alerter.demo.R.style.AlertTextAppearance_Text)

                .setTextTypeface(Typeface.createFromAsset(getAssets(), "ScopeOne-Regular.ttf"))

                .show();

Скрываем уведомление свайпом:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомление")

                .enableSwipeToDismiss()

                .setOnHideListener(new OnHideAlertListener() {

                    @Override

                    public void onHide() {

                        Toast.makeText(MainActivity.this, "уведомление скрыто", Toast.LENGTH_LONG).show();

                    }

                })

                .show();

Используем анимацию показа уведомления:

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомление")

                .setEnterAnimation(com.tapadoo.alerter.demo.R.anim.alerter_slide_in_from_left)

                .setExitAnimation(com.tapadoo.alerter.demo.R.anim.alerter_slide_out_to_right)

                .show();

Кнопка в уведомлении: 

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Текст уведомления")

                .addButton("Хорошо", com.tapadoo.alerter.demo.R.style.AlertButton, new View.OnClickListener() {

                    @Override

                    public void onClick(View v) {

                        Toast.makeText(MainActivity.this, "Кнопка нажата", Toast.LENGTH_SHORT).show();

                    }

                })

                .show();

Уведомление по центру

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Уведомление по центру экрана")

                .setLayoutGravity(Gravity.CENTER)

                .show();

Уведомление внизу экрана

Alerter.create(MainActivity.this)               .setTitle(com.tapadoo.alerter.demo.R.string.title_activity_example)

                .setText("Сообщение внизу экрана")

                .setLayoutGravity(Gravity.BOTTOM)

                .show();

Используем сторонний шрифт. Необходимо поместить файлы с шрифтами в папку Asset.

private void showAlertWithCustomFont() {

        Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setTitleAppearance(com.tapadoo.alerter.demo.R.style.AlertTextAppearance_Title)

                .setTitleTypeface(Typeface.createFromAsset(getAssets(), "Pacifico-Regular.ttf"))

                .setText("Текст уведомления")

                .setTextAppearance(com.tapadoo.alerter.demo.R.style.AlertTextAppearance_Text)

                .setTextTypeface(Typeface.createFromAsset(getAssets(), "ScopeOne-Regular.ttf"))

                .show();

Звуковое сопровождения при уведомлении. Для этого положите файл звука уведомления в папку raw.   

Alerter.create(MainActivity.this)

                .setTitle("Заголовок")

                .setText("Уведомление со звуком")

                .setBackgroundColorRes(R.color.colorAccent)

                .setSound(Uri.parse("android.resource://" + getPackageName() + "/raw/ringtone"))//ссылка на звуковой файл

                .show();

Цветной текст заголовка и текста уведомления.

Alert alert = Alerter.create(MainActivity.this)

                .setTitle("Желтый заголовок")

                .setText("Красный текст уведомления")

                .show();

        alert.getTitle().setTextColor(Color.YELLOW);//устанавливаем цвет текста заголовка

        alert.getText().setTextColor(Color.RED);//устанавливаем цвет текста сообщения уведомления

 Возникли вопросы - задавайте в комментариях, постараюсь ответить.


Комментариев нет:

Отправить комментарий