lvgl 封装了很多常用的控件,例如表格、列表、弹窗、图片等等,同时也类似html一样包含很多标签,例如常用的对象,按钮等,能够快速的搭建页面。
在html中有块级和行类元素之分,其主要的区别就是块级元素会带有默认样式,例如边框、padding,margin,outline等等,在搭建页面时往往是不需要这些样式或者自带和ui设计图的对不上,需要重新调整,这时html会有快捷的方式去除这些默认的样式,就是利用 * 号选择器在开始的地方一次性全部清除。
而参考html的lvgl也有这样的问题,如下图,创建一个对象标签默认就带有radius圆角属性,这是不需要的。
对于这种默认控件自带的样式,可以通过调用lvgl 内置的方法
lv_obj_remove_style_all(struct _lv_obj_t * obj)
删除掉,然后自己写对应的class样式,清除后其就是html中对应的div控件,可以添加任何子元素。其主要的区别就是每个控件需要清除自带样式时,都需要在控件创建后马上调用该函数。