Add lv_<widget>_draw_part_type_t to widgets to precisly describe the hooked drawings. Also add class_p element to lv_obj_draw_part_dsc_t to show what widgets lv_<widget>_draw_part_type_t needs to be used. Related to: https://forum.lvgl.io/t/how-to-add-minor-division-lines-to-a-chart/5366/
1.7 KiB
1.7 KiB
.. include:: /header.rst
:github_url: |github_link_base|/widgets/switch.md
Switch (lv_switch)
Overview
The Switch looks like a little slider and can be used to turn something on and off.
Parts and Styles
LV_PART_MAINThe background of the switch uses all the typical background style properties.paddingmakes the indicator smaller in the respective direction.LV_PART_INDICATORThe indicator that shows the current state of the switch. Also uses all the typical background style properties.LV_PART_KNOBA rectangle (or circle) drawn at left or right side of the indicator. Also uses all the typical background properties to describe the knob(s). By default the knob is square (with a optional corner radius) with side length equal to the smaller side of the slider. The knob can be made larger with thepaddingvalues. Padding values can be asymmetric too.
Usage
Change state
When the switch is turned on it goes to LV_STATE_CHECKED. To get the current satte of the switch use lv_obj_has_state(switch, LV_STATE_CHECKED).
To manually turn the switch on/off call lvobj_add/clear_state(switch, LV_STATE_CHECKED).
Events
LV_EVENT_VALUE_CHANGEDSent when the switch changes state.
See the events of the Base object too.
Learn more about Events.
Keys
LV_KEY_UP/RIGHTTurns on the sliderLV_KEY_DOWN/LEFTTurns off the sliderLV_KEY_ENTERToggles the switch
Learn more about Keys.
Example
.. include:: ../../../examples/widgets/switch/index.rst
API
.. doxygenfile:: lv_switch.h
:project: lvgl