#include "../../lv_examples.h" #if LV_USE_GRID && LV_BUILD_EXAMPLES /** * Demonstrate cell placement and span */ void lv_example_grid_2(void) { static lv_coord_t col_dsc[] = {70, 70, 70, LV_GRID_TEMPLATE_LAST}; static lv_coord_t row_dsc[] = {50, 50, 50, LV_GRID_TEMPLATE_LAST}; /*Create a container with grid*/ lv_obj_t * cont = lv_obj_create(lv_scr_act()); lv_obj_set_grid_dsc_array(cont, col_dsc, row_dsc); lv_obj_set_size(cont, 300, 220); lv_obj_center(cont); lv_obj_t * label; lv_obj_t * obj; /*Cell to 0;0 and align to to the start (left/top) horizontally and vertically too*/ obj = lv_obj_create(cont); lv_obj_set_size(obj, LV_SIZE_CONTENT, LV_SIZE_CONTENT); lv_obj_set_grid_cell(obj, LV_GRID_ALIGN_START, 0, 1, LV_GRID_ALIGN_START, 0, 1); label = lv_label_create(obj); lv_label_set_text(label, "c0, r0"); /*Cell to 1;0 and align to to the start (left) horizontally and center vertically too*/ obj = lv_obj_create(cont); lv_obj_set_size(obj, LV_SIZE_CONTENT, LV_SIZE_CONTENT); lv_obj_set_grid_cell(obj, LV_GRID_ALIGN_START, 1, 1, LV_GRID_ALIGN_CENTER, 0, 1); label = lv_label_create(obj); lv_label_set_text(label, "c1, r0"); /*Cell to 2;0 and align to to the start (left) horizontally and end (bottom) vertically too*/ obj = lv_obj_create(cont); lv_obj_set_size(obj, LV_SIZE_CONTENT, LV_SIZE_CONTENT); lv_obj_set_grid_cell(obj, LV_GRID_ALIGN_START, 2, 1, LV_GRID_ALIGN_END, 0, 1); label = lv_label_create(obj); lv_label_set_text(label, "c2, r0"); /*Cell to 1;1 but 2 column wide (span = 2).Set width and height to stretched.*/ obj = lv_obj_create(cont); lv_obj_set_size(obj, LV_SIZE_CONTENT, LV_SIZE_CONTENT); lv_obj_set_grid_cell(obj, LV_GRID_ALIGN_STRETCH, 1, 2, LV_GRID_ALIGN_STRETCH, 1, 1); label = lv_label_create(obj); lv_label_set_text(label, "c1-2, r1"); /*Cell to 0;1 but 2 rows tall (span = 2).Set width and height to stretched.*/ obj = lv_obj_create(cont); lv_obj_set_size(obj, LV_SIZE_CONTENT, LV_SIZE_CONTENT); lv_obj_set_grid_cell(obj, LV_GRID_ALIGN_STRETCH, 0, 1, LV_GRID_ALIGN_STRETCH, 1, 2); label = lv_label_create(obj); lv_label_set_text(label, "c0\nr1-2"); } #endif