I have created a list view with property data-filter-reveal set to true. The list is populated from a sqlite database at runtime in pageshow event. When I open the page, the listview is shown correctly in the page but is is expanded (all children items are shown).
If the listview is populated directly from the HTML file of the page (static content), the children items are shown correctly only when I type some text in the search field.
Once the listview is dynamically created you may need to run:
listview.trigger( 'listview' );
listviewcontainer.trigger( 'create' );
$(selector).listview( 'refresh' ), not $(selector).trigger( 'listview' ), is used if you make changes to an existing listview and you want the changes to take effect. Therefore, it would not be applicable here.