ListViewPlus - additional methods for the ListView component

This extension adds several features to the built-in ListView component.

Blocks v2:

Description:

AddClassicDividers: Add linear dividers in a classic ListView.

DecorateItems: Set rounded corners and margins for each item in the list. The radius is the same for every corner. Margin can be set with an integer, then all margins will have the same value. We can also list four integer values in the order left, top, right, and bottom.

BackgroundColorUnderItems: Set the color of the background that is under the list items.

Orientation: Change list view orientations. Fixes the original ListView property.

Reverse: Reverse the order of list items. The highest index will be at the top of the list.

ScrollTo: Scroll to a list item with animation. The item will be visible at the bottom of the list.

JumpTo: Scroll to a list item without animation. The item will be visible at the bottom of the list.

JumpToPx: Scroll to the height of the list expressed in px, without animation.

Position: Returns the list item to which the ListView is scrolled.

PositionPx: Returns the current height in px to which the ListView is scrolled.

SearchHintText: We can change the standard hint text that is displayed in the search bar.

DetectLongPress: Set ListView items to detect long press.

LongPress: An event triggered when we long press an item in the list.

Download extension:

Version 2: pl.listviewplus.aix (22.6 KB)

Download demo project:

TestListViewPlus.aia (132.9 KB)

The demo shows multi selection with a long press and deletion of selected items.

History:

V2:

  • added long press detection of ListView item,
  • added scrolling to height in pixels,
  • added the ability to read the current position of the scrolled ListView,
  • added option to modify hint text in list filtering bar,
  • added the ability to set the margins of an item from the list, so that each margin can be different,
  • adding dividers has been fixed to work in ListView horizontal view,
8 Likes

Great extension!

1 Like

will this working when set to show mainText and image?

Yes, the element is retrieved from the RecyclerView, so no matter what the view is, the one that is currently set is modified.

1 Like

The only thing is that the margins around the list item interfere with the built-in search engine, which hides items that do not match the search. The items are hidden but their margins remain, creating large gaps between list items. I'll have to think if there's a way around this.

hi, i dont know if this is a bug but i found there items have too big spaces to each other


image

Don't give Dividers because it's for the old list view. A margin of 100 is a lot, reduce it to, for example, 20 and it will be ok. Margins between items will be double because they add up. Top Position Margin + Bottom Position Margin.

thx

Modifies the extension so that each margin and each corner radius can be set separately.

Update: