How to set roller width

Description

i want to set roller width,but it does not work as expected.would you give some guidance?

Code to reproduce

Add a code snippet which can run in the simulator. It should contain only the relevant code that compiles without errors when separated from your main code base.

The code block(s) should be formatted like:

void lv_ex_roller_1(void)
{
    lv_obj_t *roller1 = lv_roller_create(lv_scr_act(), NULL);
    lv_obj_set_size(roller1,320,100);
    lv_roller_set_options(roller1,
                        "January\n"
                        "February\n"
                        "March\n"
                        "April\n"
                        "May\n"
                        "June\n"
                        "July\n"
                        "August\n"
                        "September\n"
                        "October\n"
                        "November\n"
                        "December",
                        LV_ROLLER_MODE_INFINITE);

    lv_roller_set_visible_row_count(roller1, 4);
    lv_obj_align(roller1, NULL, LV_ALIGN_CENTER, 0, 0);
    lv_obj_set_event_cb(roller1, event_handler);
}

Screenshot and/or video

image

By default the roller sizes itself according to its content. If you wish to disable that, call lv_roller_set_auto_fit(roller, false).

Thanks a lot


image
when i modify,it does not work as expected

You have to set the line with lv_roller_set_auto_fit before you set the object size with lv_obj_set_size ()

void lv_ex_roller_1 (void)
{
    lv_obj_t *roller1 = lv_roller_create (lv_scr_act(), NULL);
    lv_roller_set_auto_fit   (roller1, false);          // Set this before setting size
    lv_obj_set_size          (roller1, 320, 100);
    lv_roller_set_options    (roller1,
                        "January\n"
                        "February\n"
                        "March\n"
                        "April\n"
                        "May\n"
                        "June\n"
                        "July\n"
                        "August\n"
                        "September\n"
                        "October\n"
                        "November\n"
                        "December",
                        LV_ROLLER_MODE_INFINITE);

    lv_roller_set_visible_row_count (roller1, 4);
    lv_obj_align                    (roller1, NULL, LV_ALIGN_CENTER, 0, 0);
    lv_obj_set_event_cb             (roller1, event_handler);
}

it works now.Thanks a lot