自定义View添加TextView 无法显示

发布于 2022-09-12 01:05:02 字数 931 浏览 11 评论 0

由于项目经常使用到一个LinearLayout,里面有两个TextView,所以想封装成一个自定义View,便于xml代码的阅读

实现经过测试,无法显示TextView..

我是直接在当前目录下新建的一个自定义类,让其继承LinearLayout,之后重写只有两个参数的构造方法

求助大佬,正确的步骤是什么?我只单纯地加几个TextView,不需要实现onDraw、onMeasure那些方法吧?

以下是代码:

class ItemView(context: Context?, attrs: AttributeSet?) : LinearLayout(context) {  
    
    var descText: String? = null  
    var imgSize: Float? = null  
    var descTextSize: Float? = null  
    var imgColor: Int? = null  
    var descTextColor: Int? = null  

    init {  
        //获取自定义属性
        val typedArray = context?.obtainStyledAttributes(attrs, R.styleable.itemview) 
        typedArray?.recycle()  
        initLayout()  
    }
    fun initLayout(){
        val root = LayoutInflater.from(context).inflate(R.layout.bottom_item_view, this, true)
        val tvDesc = root.findViewById(R.id.tv_desc) as TextView
        tvDesc.text = descText
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文