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自定义顶部导航栏控件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!