测试代码如下
void test(void)
{
lv_obj_t * container = lv_obj_create(lv_scr_act());
lv_obj_set_size(container, 200, 200);
lv_obj_set_align(container, LV_ALIGN_CENTER);
lv_obj_set_style_bg_color(container, lv_color_hex(0x959393), LV_PART_MAIN | LV_STATE_DEFAULT);
lv_obj_t * ui_label_test_opts = lv_label_create(container);
lv_obj_set_align(ui_label_test_opts, LV_ALIGN_CENTER);
lv_obj_set_size(ui_label_test_opts, LV_SIZE_CONTENT, LV_SIZE_CONTENT);
lv_label_set_text(ui_label_test_opts, "1/8 mi");
// lv_obj_set_style_text_font(ui_label_test_opts, &ui_font_PingFang63, LV_PART_MAIN | LV_STATE_DEFAULT);
lv_obj_update_layout(ui_label_test_opts);
lv_obj_set_style_transform_pivot_x(container, lv_obj_get_width(container) / 2, LV_PART_MAIN | LV_STATE_DEFAULT);
lv_obj_set_style_transform_pivot_y(container, lv_obj_get_height(container) / 2, LV_PART_MAIN | LV_STATE_DEFAULT);
lv_obj_set_style_transform_angle(container, -900, LV_PART_MAIN | LV_STATE_DEFAULT);
}
在模拟器上应当是如下效果
模拟器软件旋转屏幕了,实机上显示却是空白
代码段运行在lckfb-hspi-ulp_example 的lvgl/lvgl_v8demo处
/**
* @brief Main program
* @param None
* @retval 0 if success, otherwise failure number
*/
int main(void)
{
rt_err_t ret = RT_EOK;
rt_uint32_t ms;
/* init littlevGL */
ret = littlevgl2rtt_init("lcd");
if (ret != RT_EOK)
{
return ret;
}
lv_ex_data_pool_init();
// lv_demo_main();
// ui_init();
test();
while (1)
{
ms = lv_task_handler();
rt_thread_mdelay(ms);
}
return RT_EOK;
}