自定义View时,使用DataBindingUtil.inflate()去展开一个布局组件,发现xml预览图里不显示,但是不影响功能。作为一个强迫症,怎么能忍?
1、先排除其他问题导致的,检测预览图右上角是否有红色感叹号
2、无报错,但还是展示不了。
方案很简单:使用isInEditMode判断,手动展开这个布局(在不使用ViewBinding的情况下)
init {
if (isInEditMode) {
LayoutInflater.from(context).inflate(R.layout.account_view_personal_bar, this, true)
} else {
binding = DataBindingUtil.inflate(
LayoutInflater.from(context),
R.layout.account_view_personal_bar,
this,
true
)
initView()
}
}
3、使用ViewBinding!!!!强烈建议
附:官方建议