NavigationBarKit 顶部导航条组件

Overview

NavigationBarKit

YdKit通用组件库

YdKit 是一组功能丰富的 Android 通用组件。

  • LogKit — 轻量级的 Android 日志系统。
  • RestfulKit — 简洁但不简单的 Android 网络组件库。
  • StorageKit — 高性能 Android 离线缓存框架。
  • ExecutorKit — 简洁易用的 Android 多线程操作框架。
  • CrashKit — 简洁易用的 Android Crash日志捕捉组件。
  • PermissionKit — 简洁易用的 Android 权限请求组件。
  • NavigationBarKit — 简洁易用的 Android 顶部导航条组件。
  • RefreshKit — 简洁易用的 Android 下拉刷新和上拉加载组件。
  • AdapterKit — 简洁易用的 Android 列表组件。
  • BannerKit — 简洁易用的 Android 无限轮播图组件。
  • MultiViewKit — 简洁易用的 Android 多视图组件。
  • TabBottomKit — 简洁易用的 Android 底部导航组件。

效果预览

顶部导航条组件

导入方式

仅支持AndroidX

dependencies {
     implementation 'com.android.ydkit:navigationbar-kit:1.0.0'
}

使用方法

关于矢量图标的制作和使用,可以参考矢量字体图标制作并使用

1.创建style,demo中提供了defaultStyle

@string/back 20sp #000000 18sp #000000 16sp 14sp #717882 16sp #333333 8dp #eeeeee 2px ">
    <!-- 默认属性配置-->
    <style name="NavigationBarKitDefaultStyle">
        <!-- 返回按钮文本,大小,颜色(使用iconfont)-->
        <item name="nav_icon">@string/back</item>
        <item name="nav_icon_size">20sp</item>
        <item name="nav_icon_color">#000000</item>

        <!-- 中间主标题的大小和颜色,以及出现副标题时主标题的大小-->
        <item name="title_text_size">18sp</item>
        <item name="title_text_color">#000000</item>
        <item name="title_text_size_with_subTitle">16sp</item>

        <!-- 副标题大小颜色-->
        <item name="subTitle_text_size">14sp</item>
        <item name="subTitle_text_color">#717882</item>

        <!-- 添加的按钮的大小颜色(使用iconfont)-->
        <item name="text_btn_text_size">16sp</item>
        <item name="text_btn_text_color">#333333</item>

        <!-- 按钮的横向内间距-->
        <item name="hor_padding">8dp</item>
        <!-- 底部的横线-->
        <item name="nav_line_color">#eeeeee</item>
        <item name="nav_line_height">2px</item>
    </style>

该NavigationBarKitDefaultStyle可以直接定义在AppTheme中,这样就不用在页面中设置style了

@style/NavigationBarKitDefaultStyle ">
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="NavigationBarKitStyle">@style/NavigationBarKitDefaultStyleitem>
</style>

如果在布局中再次添加 style="@style/NavigationBarKitDefaultStyle",则会覆盖掉AppTheme定义的style(特殊页面可以特殊设置)

2.在布局中添加

">
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#fff"
    android:gravity="center"
    android:orientation="vertical">

    <com.navigationbar.kit.NavigationBarKit
        android:id="@+id/nav_bar"
        style="@style/NavigationBarKitDefaultStyle"
        android:layout_width="match_parent"
        android:layout_height="45dp" />

</LinearLayout>

NavigationBarKi具体方法作用

方法 返回值 参数 作用
setNavBackListener void OnClickListener 设置返回按钮并监听其点击事件
addLeftTextButton Button stringRes: Int, viewId: Int 添加左侧按钮
addLeftTextButton Button buttonText: String, viewId: Int 添加左侧按钮
addLeftView void view: View,params: LayoutParams 添加左侧自定义view
addRightTextButton Button stringRes: Int, viewId: Int 添加右侧按钮
addRightTextButton Button buttonText: String, viewId: Int 添加右侧按钮
addRightView void view: View,params: LayoutParams 添加右侧自定义view
setTitle void title: String 添加主标题
setSubtitle void subtitle: String 添加副标题
setCenterView void view: View 中间的自定义view

License

Copyright [2021] [ydStar]

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.
You might also like...
Owner
信仰年轻
Stay hungry,stay foolish
信仰年轻