New UI Widgets is a set of widgets and UI interactions; it also includes a widgets generator for the custom data types and converter from default Text to TextMeshPro.
Collections:
- Combobox / AutoCombobox
- ListView
- Table
- TileView
- TreeGraph
- TreeView
- DirectoryTreeView *
- FileListView *
Widgets can be generated for your custom type with the context menu “Create / New UI Widgets / Generate Widgets”
Virtualization (recycling) supported: game objects are created for visible items only.
Containers:
Dialog:
- DatePicker / DateTimePicker
- DateScrollerPicker / DateTimeScrollerPicker
- Dialog
- FileDialog *
- FolderDialog *
- Notify
- Picker
- Popup
- TimePicker
Controls:
Input:
- Autocomplete
- Calendar
- CenteredSlider
- CircularSlider
- ColorPicker
- ColorPickerRange
- DateScroller / DateTimeScroller / TimeScroller
- RangeSlider
- Spinner
- Switch
- Time / TimeAnalog
Other:
Interactions:
Works with:
* not available on platforms with restricted access to the file system (like WebGL and Windows Store/UWP)
Asset Store
Demo
Documentation
v1.17.15
- InputAdapter: added workaround to properly update layout because TMP_InputField does not call LayoutRebuilder.MarkLayoutForRebuild() when it should be
- ListView: the RetainScrollPosition option now correctly works with the enabled ReversedOrder option
- Project Settings: removed performance impact on enter/exit play mode
- Rating: fixed error on Value = 0
- Rating: now interactable works properly
- SafeArea: added OnScreenChange event with information about borders
- Swipe: added OnTap event
- UIThemes: added the “Attach UI Only” option in “Project Settings… / UI Themes”, if enabled ThemeTarget component will be added only to game objects with RectTransform component
v1.17.14
- COMPATIBILITY-BREAKING CHANGES: methods Updater.RunOnce(Action) and Updater.RunOnceNextFrame(Action) replaced with methods Updater.RunOnce(UnityEngine.Object owner, Action) and Updater.RunOnceNextFrame(UnityEngine.Object owner, Action)
- added ListViewDefaultItemAutoResize: automatically changes item instances size on ListView resize, used when only one item should be visible
- InputFieldAdapter: added the SetTextWithoutNotify(string text) method
- EasyLayout: added warning when one of the objects in the same row has relative width (or one of the objects in the same column has relative height)
- EasyLayout: added IgnoreLayoutElementSizes option: if enabled ILayoutElement options will be ignored, increases performance without side effects if ChildrenWidth and ChildrenHeight are not controlled
- EasyLayout: added Hex layout
- ScrollBlock: added ScrollBlockResizer component to resize ScrollBlock items to display specified item count independent of size
- TreeView: fixed bug in the TreeViewDropSupport components
- UIThemes: now support addressable assets, support can be enabled in “Project Settings… / UI Themes”
- UIThemes: Theme: added the AddressableSupport option, addressable assets can be preloaded with PreloadAddressable() or PreloadAddressable(VariationId) methods
- UIThemes: now requires references to the Unity.Addressables and Unity.ResourceManager in the UIThemes assembly definition
- UIThemes: now requires reference to Unity.Addressables.Editor in the UIThemes.Editor assembly definition
v1.17.13
- improved Assembly Definitions support
- ListView: reduced the SetData() calls for the item instances to improve performance
- ListView: fixed bug with DataSource.Clear()
- TreeView: improved RetainScrollPosition support
v1.17.12
- added ScrollRectAutoScroll component: allows scrolling content during drag&drop when the pointer is in less than a specified distance from the border
- ListView: fixed ReversedOrder for the horizontal direction
- Drag: added the DragDelay option - how many seconds must pass from the click to the start of dragging
- Drag: added the RedirectDragToScrollRect option - redirects the drag events to the parent ScrollRect if the drag starts before DragDelay time is passed
v1.17.11
- ListView: scroll no more “jump” when dragging backward and item size is changed
- Widgets Generator: fixed bug occurring when the default theme is not specified
v1.17.10
- COMPATIBILITY-BREAKING CHANGES: ActivateInputField() method renamed to Activate() in the IInputFieldProxy interface
- added DataLoader class to simplify loading and caching data
- Accordion: added Interactable option
- CenteredSlider: added Interactable and PointerButton options
- ColorPicker: added Interactable option
- Combobox: added Interactable option
- Combobox: added RepositionListView option, if enabled ListView is automatically positioned to be completely visible if partially hidden by the bottom or right side of the screen
- Combobox: added ChangeRounderCorners option, if enabled then corner radiuses will be changed to match the repositioned ListView
- FileListViewPath: added Interactable, DisabledColor, and PointerButton options
- ListView: added LoopedNavigation option, enabled by default, if enables/disables navigation from first to last item and vice versa
- ListView: added MultipleSelectRequireKeys option, disabled by default, items selection will work similarly to file explorer if enabled
- ListView: added RequireVisible option, number of visible items from current item to border on navigation
- ListView: scroll no more “jump” when scrolling backward when the item size is changed
- ListView: the LoopedList option now works correctly with items of variable sizes
- ListViewPaginator: fixed bug with empty ListView and incorrectly detected page in some cases
- OpenContextMenu: added Interactable and PointerButton options
- Paginator: added Interactable option
- SliderScroll: no more change Slider value if it is not interactable
- Tabs: added TabsScroll component to toggle tabs with mouse scroll
- TreeNode: fixed incorrect deserialization
- UI Themes: fixed ThemeTarget bug caused by removed component