下面一段代码给大家介绍了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 } }
热血大作战 安卓最新版v2.1.166
下载凡尔赛法环免广告版 最新版v1.69.1
下载天煞异种 安卓版v1.0.21
下载十三月 (Undecember)最新官方中文版v3.26.0200
下载星露谷物语sve 安卓版v1.5.6.52
星露谷物语sve手机版是游戏的超大拓展Mod内容,全称Sta
动物园大亨 手机版v2.0
动物园大亨是一款模拟动物园经营的休闲放置游戏,采用了卡通画风
蜜蜂园林钞票不减反增版 v0.1.68
蜜蜂园林无限道具版是游戏的破解版本,在该版本中为玩家提供了足
幻想熔炉失落帝国的世界 安卓版v2.16.2
幻想熔炉失落帝国的世界是一款魔法卡通风格的城市模拟经营类游戏
我的女友是声优免广告 安卓版v1
我的女友是声优免广告是一款非常好玩的模拟经营类手游,玩家在游