Android自定义顶部导航栏控件实例代码
下面一段代码给大家介绍了android自定义顶部导航栏控件功能,具体代码如下所示:
classHeaderBar@JvmOverloadsconstructor(
context:Context,attrs:AttributeSet?=null,defStyleAttr:Int=0
):FrameLayout(context,attrs,defStyleAttr){
//重写构造方法在java里面我们一般是重写三个构造方法//在kotlin中我们可以使用@JvmOverloadsconstructor(
//context:Context,attrs:AttributeSet?=null,defStyleAttr:Int=0
//)后面的两个参数我们不传的可以使用的是默认值//定义一些变量privatevarisShowback=true
privatevartitleText:String?=null
privatevarrightText:String?=null
//初始化在init方法中初始化布局设置style
init{
//自定义属性valtypedArray=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()
}
//初始化控件的方法privatefuninitView(){
//填充布局View.inflate(context,R.layout.layout_header_bar,this)
mLeftIv.visibility=if(isShowback)View.VISIBLEelseView.INVISIBLE
titleText?.let{
mTitleTv.text=it
}
rightText?.let{
mRightTv.text=it
mRightTv.visibility=View.VISIBLE
}
mLeftIv.onClick{
if(contextisActivity)
(contextasActivity).finish()
}
}
fungetRightView():TextView{
returnmRightTv
}
}
总结
以上所述是小编给大家介绍的Android自定义顶部导航栏控件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!