1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/osard-DialogUtilsLib

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Toast-уведомления

Toast.makeText(MainActivity.this, «Нажата кнопка "ОК"», Toast.LENGTH_SHORT).show(); return true; }) .setOnBtnCancel(() -> { Toast.makeText(MainActivity.this, «Нажата кнопка "Отмена"», Toast.LENGTH_SHORT).show(); }) .setOnActivityLifecycleClose(() -> { Toast.makeText(MainActivity.this, "activity закрыта", Toast.LENGTH_SHORT).show(); }) .setAlias("text2") .show(imageView);

Диалог ввода (input dialog)

DialogLibInput.create(this) .setMessage("Введите информацию") .setAlias("text3") .setPortraitWidthFactor(0.85F) .setLandscapeWidthFactor(0.5F) //todo настройка отображения пароля, скрытия/отображения картинки, поскольку тип ввода не является паролем, эта настройка здесь не действует .setShowLookPassword() //автоматическое всплытие клавиатуры .setPopupKeyboard() .setOnBtnCancel(() -> { Toast.makeText(MainActivity.this, «Нажата кнопка "Отмена"», Toast.LENGTH_SHORT).show(); }) .setOnBtnOk(str -> { Toast.makeText(MainActivity.this, "Введённое сообщение: " + str, Toast.LENGTH_SHORT).show(); return true; }) .setOnActivityLifecycleClose(() -> { Toast.makeText(MainActivity.this, "активность закрыта", Toast.LENGTH_SHORT).show(); }) .show();

Ожидающий диалог (loading dialog)

DialogLibLoading.create(this) //время автоматического закрытия, если необходимо закрыть вручную, сохраните этот объект и вызовите dialogLibLoading.closeDialog() при необходимости .setTimeoutClose(2000) .setAlias("text4") .setOnLoading(() -> { Toast.makeText(MainActivity.this, "Я был показан перед отображением диалога", Toast.LENGTH_SHORT).show(); }) .setOnActivityLifecycleClose(() -> { Toast.makeText(MainActivity.this, "активность закрыта", Toast.LENGTH_SHORT).show(); }) .show();

Полностью настраиваемый диалог (полностью настраиваемый dialog) final DialogLibAllCustom dialog = DialogLibAllCustom.create(this) .setCancelable(true) .setPortraitWidthFactor(0.85F) .setLandscapeWidthFactor(0.5F) .setAlias("text5");

TextView view = new TextView(this); view.setBackgroundResource(R.color.purple_500); view.setTextColor(getResources().getColor(R.color.white)); view.setText("Это полностью настраиваемый диалоговый интерфейс, который необходимо закрыть вручную после отображения диалога"); view.setOnClickListener(v2 -> { dialog.closeDialog(); }); dialog.setOnActivityLifecycleClose(() -> { Toast.makeText(MainActivity.this, "активность закрыта", Toast.LENGTH_SHORT).show(); }); dialog.show(view);

Пароль ввода (password input dialog)

DialogLibInput.create(this) .setMessage("123") .setLength(6) .setPortraitWidthFactor(0.85F) .setLandscapeWidthFactor(0.5F) .setInputType(EditorInfo.TYPE_CLASS_NUMBER | EditorInfo.TYPE_NUMBER_VARIATION_PASSWORD) .setAlias("text6") //настройка отображения пароля, скрытия/отображения изображения .setShowLookPassword() //всплытие клавиатуры автоматически .setPopupKeyboard() .setOnBtnCancel(() -> { Toast.makeText(MainActivity.this, «Нажата кнопка "Отмена"», Toast.LENGTH_SHORT).show(); }) .setOnBtnOk(str -> { Toast.makeText(MainActivity.this, "введённый пароль: " + str, Toast.LENGTH_SHORT).show(); return true; }) .setOnActivityLifecycleClose(() -> { Toast.makeText(MainActivity.this, "активность закрыта", Toast.LENGTH_SHORT).show(); }) .show();

Snackbar (снэкбар)

SnackBarLib.make(binding.coordinator, «Снэкбар снэкбар снэкбар снэкбар снэкбар снэкбар снэкбар», 10 * 1000) .setContentColor(R.color.white) .setAction("action", v1 -> Toast.makeText(getApplicationContext(), "событие нажатия action", Toast.LENGTH_SHORT).show()) .setActionClickCallback(tag -> { Toast.makeText(getApplicationContext(), «действие закрыто», Toast.LENGTH_SHORT).show(); }) .showSuccess();

//или использовать стиль по умолчанию, который в основном соответствует привычкам написания системных свойств Snackbar SnackBarLib.makeShort(binding.text7,"снэкбар").show();

//закрыть уже показанный SnackBar SnackBarLib.dismiss();

PopupWindow (всплывающее окно)

//создать объект PopupWindowLib final dimens下字体大小 ресурсы

  • dialog_utils_lib_common_title_text_size: 14sp.

  • dialog_utils_lib_common_ok_text_size: 14sp.

  • dialog_utils_lib_common_cancel_text_size: 14sp.

  • dialog_utils_lib_common_content_text_size: 14sp.

  • dialog_utils_lib_input_title_text_size: 14sp.

  • dialog_utils_lib_input_ok_text_size: 14sp.

  • dialog_utils_lib_input_cancel_text_size: 14sp.

  • dialog_utils_lib_input_text_size: 14sp.

  • dialog_utils_lib_custom_title_text_size: 14sp.

  • dialog_utils_lib_custom_ok_text_size: 14sp.

  • dialog_utils_lib_custom_cancel_text_size: 14sp.

  • dialog_utils_lib_loading_text_size: 14sp.

  • snackbar_lib_content_size: 14sp.

  • snackbar_lib_action_size: —. Перевод текста на русский язык:

- **Определение ресурсов в strings, обратите внимание: если в вашем проекте существует несколько языков, то необходимо их перекрывать** 

```html
<resources>
    <string name="dialog_utils_lib_ok">确定</string>
    <string name="dialog_utils_lib_cancel">取消</string>
    <string name="dialog_utils_lib_default_title">提示</string>
    <string name="dialog_utils_lib_data_processing">数据处理中…</string>
</resources>
  • Определение ресурсов в mipmap, формат png, можно перекрывать
dialog_utils_lib_password_hide — изображение с паролем скрыто
dialog_utils_lib_password_show — изображение с паролем показано
snackbar_lib_default_success — значок успешного выполнения snackbar
snackbar_lib_default_error — значок ошибки snackbar
snackbar_lib_default_info — значок информации snackbar
snackbar_lib_default_warn — значок предупреждения snackbar
  • Определение ресурсов в integers, можно перекрывать
<resources>

    <!--Максимальное количество строк текста в области отображения текста snackbar. Если текст превышает это количество, то в конце автоматически отображается ..., подходит для SnackBarLib-->
    <integer name="design_snackbar_text_max_lines">2</integer>
</resources>

Пять, предварительный просмотр

  • Обычный диалог Обычный диалог

  • Настраиваемый диалог Настраиваемый диалог

  • Полностью настраиваемый диалог Полностью настраиваемый диалог

  • Диалог ввода Диалог ввода

  • Ожидание диалога Ожидание диалога

  • Пароль ввода, отображение пароля Пароль ввода, отображение пароля

  • Пароль ввода, скрытие пароля Пароль ввода, скрытие пароля

  • Snackbar, окно подсказки Snackbar, окно подсказки

License

Copyright 2021 mjsoftking

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Замените системное диалоговое окно в стиле dialog на универсальный класс окна с подсказками. Можно покрыть определённые ресурсы в lib, изменить существующий стиль оформления (цвета). Требуется изменить стиль макета. Проект можно скачать и настроить самостоятельно. Развернуть Свернуть
Apache-2.0
Отмена

Обновления (5)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/osard-DialogUtilsLib.git
git@api.gitlife.ru:oschina-mirror/osard-DialogUtilsLib.git
oschina-mirror
osard-DialogUtilsLib
osard-DialogUtilsLib
master