Android自定义顶部导航栏控件实例代码

 更新时间:2017年12月25日 16:19:04   作者:杨伟乔  
这篇文章主要介绍了Android自定义顶部导航栏控件实例代码,需要的朋友可以参考下

下面一段代码给大家介绍了android 自定义顶部导航栏控件功能,具体代码如下所示:

class HeaderBar @JvmOverloads constructor(
context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
) : FrameLayout(context, attrs, defStyleAttr) {
//重写构造方法 在java里面 我们一般是重写三个构造方法//在kotlin中 我们可以使用@JvmOverloads constructor(
//     context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
//  )后面的两个参数 我们不传的可以使用的是默认值//定义一些变量private var isShowback = true
private var titleText: String? = null
private var rightText: String? = null
//初始化 在init方法中 初始化布局 设置style
init {
//自定义属性val typedArray = context.obtainStyledAttributes(attrs, R.styleable.HeaderBar)
//取出在布局中定义的属性isShowback = typedArray.getBoolean(R.styleable.HeaderBar_isShowBack, true)
titleText = typedArray.getString(R.styleable.HeaderBar_titleText)
rightText = typedArray.getString(R.styleable.HeaderBar_rightText)
initView()
typedArray.recycle()
}
//初始化控件的方法private fun initView() {
//填充布局View.inflate(context, R.layout.layout_header_bar, this)
mLeftIv.visibility = if (isShowback) View.VISIBLE else View.INVISIBLE
titleText?.let {
mTitleTv.text = it
}
rightText?.let {
mRightTv.text = it
mRightTv.visibility = View.VISIBLE
}
mLeftIv.onClick {
if (context is Activity)
(context as Activity).finish()
}
}
fun getRightView(): TextView {
return mRightTv
}
}

总结

以上所述是小编给大家介绍的Android自定义顶部导航栏控件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • android多种滑动冲突的解决方案

    android多种滑动冲突的解决方案

    本篇文章主要介绍了android多种滑动冲突的解决方案,解决方案主要有2种,外部拦截法 和内部拦截法,有兴趣的可以了解一下。
    2017-02-02
  • Android自定义View实现BMI指数条

    Android自定义View实现BMI指数条

    这篇文章主要为大家详细介绍了Android自定义View实现BMI指数条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Android编程之文件的读写实例详解

    Android编程之文件的读写实例详解

    这篇文章主要介绍了Android编程之文件的读写方法,结合实例形式较为详细的分析了Android针对文件操作的详细步骤,常用函数及使用技巧,需要的朋友可以参考下
    2015-12-12
  • Flutter使用AnimatedBuilder实现动效复用

    Flutter使用AnimatedBuilder实现动效复用

    Animation和AnimationWidget都是将组件和动画一起完成的。有些时候,我们只是想动效复用,而不关心组件构建,这个时候就可以使用 AnimatedBuilder了。本文详细讲解了AnimatedBuilder的使用,需要的可以参考一下
    2022-04-04
  • Android编程实现异步消息处理机制的几种方法总结

    Android编程实现异步消息处理机制的几种方法总结

    这篇文章主要介绍了Android编程实现异步消息处理机制的几种方法,结合实例形式详细总结分析了Android异步消息处理机制的原理、相关实现技巧与操作注意事项,需要的朋友可以参考下
    2018-08-08
  • Android的webview支持HTML5的离线应用功能详细配置

    Android的webview支持HTML5的离线应用功能详细配置

    HTML5的离线应用功能可以使得WebApp即使在网络断开的情况下仍能正常使用这是个非常有用的功能,但如何使Webivew支持HTML5离线应用功能呢,需要的朋友可以参考下
    2012-12-12
  • Android编程之动态壁纸实例分析

    Android编程之动态壁纸实例分析

    这篇文章主要介绍了Android编程之动态壁纸实现方法,以实例形式分析了Android动态壁纸的原理与实现步骤,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-12-12
  • Android实现多线程下载文件的方法

    Android实现多线程下载文件的方法

    这篇文章主要介绍了Android实现多线程下载文件的方法,以实例形式较为详细的分析了Android多线程文件传输及合并等操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • 详解flutter如何实现局部导航管理

    详解flutter如何实现局部导航管理

    这篇文章主要为大家介绍了详解flutter如何实现局部导航管理示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • Android自定义控件打造绚丽平行空间引导页

    Android自定义控件打造绚丽平行空间引导页

    这篇文章主要为大家详细介绍了Android自定义控件打造绚丽平行空间引导页,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12

最新评论