CookieBar2
Демонстрация эффекта доступна по ссылке: screenshot/sample.gif.
allprojects {
repositories {
maven {
url 'https://s01.oss.sonatype.org/content/repositories/releases/'
}
}
}
dependencies {
implementation('com.gitee.chinasoft_ohos:cookiebar2:1.1.5')
......
}
В версии SDK6 и DevEco Studio2.2 Beta1 проект можно запустить напрямую. Если запуск не удался, удалите файлы .gradle, .idea, build, gradle и build.gradle из проекта и создайте новый проект на основе вашей версии. Скопируйте соответствующие файлы из нового проекта в корневой каталог.
Для связывания верхнего и нижнего компонентов используйте следующий метод, чтобы одновременно удалить оба компонента и обеспечить возможность одновременного бокового скольжения:
cookieTopView.setCookieBottomView(cookieBottomView);
Чтобы удалить верхний компонент, когда пользователь нажимает на пустой экран, добавьте следующий код в rootComponent:
rootComponent.setClickedListener(component -> {
if (cookieTopView.isTopExist) {
cookieTopView.isNeedTopToBottom = false;
cookieTopView.startAnimationBottom();
cookieTopView.isTopExist = false;
} else if (cookieTopView.isLeftExit) {
cookieTopView.isNeedLeftToRight = false;
cookieTopView.startAnimationRight();
cookieTopView.isLeftExit = false;
}
if (cookieBottomView.isExit) {
cookieBottomView.removeHandler();
cookieBottomView.isNeedTopToBottom = false;
cookieBottomView.startAnimationBottom();
}
});
XML-макет:
<org.aviran.cookiebar2.CookieTopView
ohos:id="$+id:cookieTopView"
ohos:height="match_parent"
ohos:width="match_parent"
app:title="Top cookie with an icon!"
app:message="This is a top cookie with an icon (#%d)"/>
<org.aviran.cookiebar2.CookieBottomView
ohos:id="$+id:cookieBottomView"
ohos:height="match_parent"
ohos:width="match_parent"
app:message="This is a top cookie with an icon (#%d)"
app:title="Top cookie with an icon!"/>
Полный пример: topCookieBar:
topCookieButton.setClickedListener(component -> {
topCookieBarTimes = topCookieBarTimes + 1;
cookieTopView.setIcon(ResourceTable.Media_icon);
cookieTopView.setDuration(5000);
cookieTopView.setTitle("Top cookie with an icon!");
cookieTopView.setTitleColor(Color.YELLOW);
cookieTopView.setMessage("This is a top cookie with an icon (#" + topCookieBarTimes + ")");
cookieTopView.setMessageColor(Color.WHITE);
ShapeElement shapeElement = new ShapeElement();
shapeElement.setRgbColor(new RgbColor(171, 71, 188));
cookieTopView.setBackgroundColor(shapeElement);
cookieTopView.startAnimationTopToBottom();
});
bottomCookieBar (без кнопки):
cookieBottomView.setDuration(5000);
cookieBottomView.setTitle("Bottom cookie with and icon");
cookieBottomView.setTitleColor(Color.YELLOW);
cookieBottomView.setMessage("This is a bottom cookie with an icon and an action. Nice right?");
cookieBottomView.setMessageColor(Color.WHITE);
cookieBottomView.setAction("Action");
cookieBottomView.setActionColor(Color.YELLOW);
cookieBottomView.setIcon(ResourceTable.Media_icon);
cookieBottomView.showThreeStatusButton(false);// 是否需要显示三个状态按钮
ShapeElement shapeElement = new ShapeElement();
shapeElement.setRgbColor(new RgbColor(33, 150, 243));
cookieBottomView.setBackgroundColor(shapeElement);
cookieBottomView.startAnimationBottomToTop();
bottomCookieBar (с кнопкой):
cookieBottomView.setTitle("Custom cookie view demo!");
cookieBottomView.setTitleColor(Color.WHITE);
cookieBottomView.setMessage("You can customize CookieBar2. Here's an example of a simple dialog.");
cookieTopView.setMessageColor(Color.WHITE);
cookieBottomView.setAction("CLOSE");
Color color = new Color(Color.getIntColor("#26a69a"));
cookieBottomView.setActionColor(color);
cookieBottomView.setIcon(ResourceTable.Media_icon);
cookieBottomView.showThreeStatusButton(true); // 是否需要显示 три состояния кнопки
ShapeElement shapeElement = new ShapeElement();
shapeElement.setRgbColor(new RgbColor(63, 81, 181));
cookieBottomView.setBackgroundColor(shapeElement);
cookieBottomView.startAnimationBottomToTop();
``` **О CookieTopView**
| Метод | Описание |
|:----------:|:------------------------:|
| setIcon | Установка иконки CookieBar |
| setDuration | Установка времени очистки CookieBar |
|setTitle |Установка заголовка CookieBar |
|setTitleColor |Установка цвета шрифта заголовка CookieBar |
|setMessage |Установка сообщения CookieBar |
|setMessageColor |Установка цвета шрифта сообщения CookieBar |
|setBackgroundColor |Установка цвета фона CookieBar |
|startAnimationTopToBottom |Вызов метода анимации CookieBar сверху вниз |
| startAnimationLeftToRight |Вызов метода анимации движения слева направо в верхней части CookieBar |
**О CookieBottomView**
|Метод |Описание |
|:----------:|:--------------------:|
|setIcon |Установка иконки CookieBar |
|setDuration |Установка времени очистки CookieBar |
|setTitle |Установка заголовка CookieBar |
|setTitleColor |Установка цвета шрифта заголовка CookieBar |
|setAction |Установка текста на кнопке CookieBar |
|setActionColor |Установка цвета шрифта текста на кнопке CookieBar |
|showThreeStatusButton |Отображение трёх кнопок состояния |
|setNewBtListener |Настройка прослушивателя кнопки NEW |
|setOpenBtListener |Настройка прослушивателя кнопки OPEN |
|setSaveBtListener |Настройка прослушивателя кнопки SAVE |
|setMessage |Установка сообщения CookieBar |
|setMessageColor |Установка цвета шрифта сообщения CookieBar |
|setBackgroundColor |Установка цвета фона CookieBar |
|startAnimationBottomToTop |Вызов метода анимации снизу вверх |
#### Тестирование
CodeCheck — тестирование кода без ошибок.
CloudTest — тестирование кода без ошибок.
Вирусная безопасность — проверка пройдена.
Текущая версия demo — основные функции не отличаются от исходного компонента.
#### Версии
1.1.5
0.0.1-SNAPSHOT
#### Авторские права и лицензии
Copyright 2018, Aviran Abady.
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 )