C¶
Tileview with content¶
code
#include "lvgl/lvgl.h"
void lv_ex_tileview_1(void)
{
static lv_point_t valid_pos[] = {{0,0}, {0, 1}, {1,1}};
lv_obj_t *tileview;
tileview = lv_tileview_create(lv_scr_act(), NULL);
lv_tileview_set_valid_positions(tileview, valid_pos, 3);
lv_tileview_set_edge_flash(tileview, true);
lv_obj_t * tile1 = lv_obj_create(tileview, NULL);
lv_obj_set_size(tile1, LV_HOR_RES, LV_VER_RES);
lv_obj_set_style(tile1, &lv_style_pretty);
lv_tileview_add_element(tileview, tile1);
/*Tile1: just a label*/
lv_obj_t * label = lv_label_create(tile1, NULL);
lv_label_set_text(label, "Tile 1");
lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);
/*Tile2: a list*/
lv_obj_t * list = lv_list_create(tileview, NULL);
lv_obj_set_size(list, LV_HOR_RES, LV_VER_RES);
lv_obj_set_pos(list, 0, LV_VER_RES);
lv_list_set_scroll_propagation(list, true);
lv_list_set_sb_mode(list, LV_SB_MODE_OFF);
lv_tileview_add_element(tileview, list);
lv_obj_t * list_btn;
list_btn = lv_list_add_btn(list, NULL, "One");
lv_tileview_add_element(tileview, list_btn);
list_btn = lv_list_add_btn(list, NULL, "Two");
lv_tileview_add_element(tileview, list_btn);
list_btn = lv_list_add_btn(list, NULL, "Three");
lv_tileview_add_element(tileview, list_btn);
list_btn = lv_list_add_btn(list, NULL, "Four");
lv_tileview_add_element(tileview, list_btn);
list_btn = lv_list_add_btn(list, NULL, "Five");
lv_tileview_add_element(tileview, list_btn);
list_btn = lv_list_add_btn(list, NULL, "Six");
lv_tileview_add_element(tileview, list_btn);
list_btn = lv_list_add_btn(list, NULL, "Seven");
lv_tileview_add_element(tileview, list_btn);
list_btn = lv_list_add_btn(list, NULL, "Eight");
lv_tileview_add_element(tileview, list_btn);
/*Tile3: a button*/
lv_obj_t * tile3 = lv_obj_create(tileview, tile1);
lv_obj_set_pos(tile3, LV_HOR_RES, LV_VER_RES);
lv_tileview_add_element(tileview, tile3);
lv_obj_t * btn = lv_btn_create(tile3, NULL);
lv_obj_align(btn, NULL, LV_ALIGN_CENTER, 0, 0);
label = lv_label_create(btn, NULL);
lv_label_set_text(label, "Button");
}
MicroPython¶
Tileview with content¶
code
valid_pos = [{"x":0, "y": 0}, {"x": 0, "y": 1}, {"x": 1,"y": 1}]
# resolution of the screen
HOR_RES = lv.disp_get_hor_res(lv.disp_get_default())
VER_RES = lv.disp_get_ver_res(lv.disp_get_default())
tileview = lv.tileview(lv.scr_act())
tileview.set_valid_positions(valid_pos, len(valid_pos))
tileview.set_edge_flash(True)
tile1 = lv.obj(tileview)
tile1.set_size(HOR_RES, VER_RES)
tile1.set_style(lv.style_pretty)
tileview.add_element(tile1)
# Tile1: just a label
label = lv.label(tile1)
label.set_text("Tile 1")
label.align(None, lv.ALIGN.CENTER, 0, 0)
# Tile2: a list
lst = lv.list(tileview)
lst.set_size(HOR_RES, VER_RES)
lst.set_pos(0, VER_RES)
lst.set_scroll_propagation(True)
lst.set_sb_mode(lv.SB_MODE.OFF)
tileview.add_element(lst)
list_btn = lst.add_btn(None, "One")
tileview.add_element(list_btn)
list_btn = lst.add_btn(None, "Two")
tileview.add_element(list_btn)
list_btn = lst.add_btn(None, "Three")
tileview.add_element(list_btn)
list_btn = lst.add_btn(None, "Four")
tileview.add_element(list_btn)
list_btn = lst.add_btn(None, "Five")
tileview.add_element(list_btn)
list_btn = lst.add_btn(None, "Six")
tileview.add_element(list_btn)
list_btn = lst.add_btn(None, "Seven")
tileview.add_element(list_btn)
list_btn = lst.add_btn(None, "Eight")
tileview.add_element(list_btn)
# Tile3: a button
tile3 = lv.obj(tileview, tile1)
tile3.set_pos(HOR_RES, VER_RES)
tileview.add_element(tile3)
btn = lv.btn(tile3)
btn.align(None, lv.ALIGN.CENTER, 0, 0)
label = lv.label(btn)
label.set_text("Button")