dependencies {
implementation "io.openharmony.tpc.thirdlib:BottomNavigationViewEx:1.0.1"
}
|addItem|В коде динамически устанавливает item. |enableAnimation|Включает или отключает анимацию при нажатии. По умолчанию true. |enableItemShiftingMode|Включает или отключает режим смещения подменю. |setBackgroundColor|Устанавливает цвет фона нижней панели. |setIconVisibility|Определяет, будут ли отображаться значки элементов, кроме выбранного. Если true, то у всех элементов, кроме текущего, значки будут скрыты. |setTextVisibility|Определяет, будет ли отображаться текст элементов, кроме выбранного. Если true, то у всех элементов, кроме текущего, текст будет скрыт. |setShowAllText|Устанавливает видимость всего текста элементов. |getMenuItemPosition|Получает индекс указанного элемента. |setCurrentItem|Устанавливает текущий выбранный элемент. |setTabSelectedListener|Устанавливает слушателя для событий меню. |getIconAt|Получает значок указанного элемента. |getItemCount|Получает количество элементов в меню. |getLargeLabelAtText|Получает текст метки указанного элемента. |setLargeLabelAtText|Устанавливает текст метки указанного элемента. |getBottomNavigationItemView|Получает приватный член mButton, расположенный в позиции. |getBottomNavigationItemViews|Получает все приватные члены mButtons. |setupWithViewPager|Связывает с ViewPager. При изменении выбора любого элемента автоматически изменяется другой элемент.
Добавьте пользовательский компонент в xml
макет:
<com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx
ohos:id="$+id:bnve_no_animation_shifting_mode_item_shifting_mode"
ohos:width="match_parent"
ohos:height="match_content"
/>
Добавьте элементы в java
код:
bnve_normal = (BottomNavigationViewEx) findComponentById(ResourceTable.Id_bnve_normal);
bnve_normal.clearAll();
bnve_normal
.addItem( new BottomNavigationItem(ResourceTable.Media_ic_music_note_white_24dp, "Музыка", getContext()))
.addItem( new BottomNavigationItem(ResourceTable.Media_id_book_white_24dp, "Облачные сервисы", getContext()))
.addItem( new BottomNavigationItem(ResourceTable.Media_ic_find_replace_white_24dp, "Круг друзей", getContext()))
.addItem(new BottomNavigationItem(ResourceTable.Media_ic_favorite_white_24dp, "Коллекции", getContext()))
.addItem(new BottomNavigationItem(ResourceTable.Media_ic_home_white_24dp, "Поиск", getContext()))
.setCurrentItem(0)
.initialise();
bnve_normal.enableAnimation(false);
bnve_normal.enableShiftingMode(false);
#### Связать с PageSlider ####
```java
// Установить провайдера
pageSlider = (PageSlider) findComponentById(ResourceTable.Id_vp);
pageSlider.setProvider(new VpAdapter(getData()));
// Связать с viewPager
bnve_normal.setupWithViewPager(pageSlider);
abt_badge_bnve = (BottomNavigationViewEx) findComponentById(ResourceTable.Id_abt_badge_bnve);
numberBadgeItem = new TextBadgeItem() .setBorderWidth(AttrHelper.vp2px(1.5f, getContext())) .setBackgroundColor(0xffff5454) .setText("2") .setHideOnSelect(true);
shapeBadgeItem =
new ShapeBadgeItem()
.setShape(shapeBadge)
.setShapeColor(0xffff5454)
.setOffset(AttrHelper.vp2px(20, getContext()), AttrHelper.vp2px(-20, getContext()))
.setHideOnSelect(true);
abt_badge_bnve.clearAll();
abt_badge_bnve
.addItem(new BottomNavigationItem(ResourceTable.Media_ic_location_on_white_24dp, "Музыка", getContext()))
.addItem(new BottomNavigationItem(ResourceTable.Media_ic_find_replace_white_24dp, "Облачные сервисы", getContext()))
.addItem(
new BottomNavigationItem(ResourceTable.Media_ic_find_replace_white_24dp, "Коллекции", getContext())
.setBadgeItem(numberBadgeItem))
.addItem(new BottomNavigationItem(ResourceTable.Media_ic_find_replace_white_24dp, "Поиск", getContext()))
.addItem(
new BottomNavigationItem(ResourceTable.Media_ic_favorite_white_24dp, "Круг друзей", getContext())
.setBadgeItem(shapeBadgeItem))
.setCurrentItem(0)
.setShowAllText(false)
.initialise();
MIT License
Copyright (c) 2017 ittianyu
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Программное обеспечение без ограничений, включая, помимо прочего, права:
* использовать;
* копировать;
* модифицировать;
* объединять;
* публиковать;
* распространять;
* предоставлять сублицензию и (или) продавать копии программного обеспечения;
* разрешать лицам, которым предоставлено программное обеспечение, делать это.
При условии соблюдения следующих условий:
* вышеуказанное уведомление об авторских правах и данное уведомление о разрешении должны быть включены во все копии или существенные части программного обеспечения.
Программное обеспечение предоставляется «как есть», без каких-либо гарантий любого рода, явных или подразумеваемых, включая, но не ограничиваясь гарантиями товарного состояния, пригодности для конкретной цели и отсутствия нарушений прав третьих лиц. Ни при каких обстоятельствах авторы или правообладатели не несут ответственности за какие-либо претензии, убытки или иную ответственность, будь то в результате действия контракта, деликта или иным образом, возникающие из, за пределами или в связи с программным обеспечением или использованием или другими сделками с программным обеспечением.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )