Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.

New UI Widgets

Discussion in 'Assets and Asset Store' started by ilih, Feb 11, 2015.

  1. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    You can change the animation curve to what works better for you:
    • ListViewPaginator uses ListView.ScrollMovement
    • ScrollRectPaginator uses its own Movement curve
    Width is the length of the animation in seconds; height is a relative distance (0 is start position; 1 is end position)

    I'll think about it.
     
    jGate99 likes this.
  2. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih

    Any plans for Chart Controls , something like this?
    I'd gladly pay for an asset that even "starts" with this look (with round corners) if its coming from 'you'

    upload_2021-7-8_20-39-47.png
     
  3. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    I was thinking about it, but it needs some research, so not sure if it will be added.
     
    jGate99 likes this.
  4. KBSMediaDevTeam

    KBSMediaDevTeam

    Joined:
    Jun 15, 2020
    Posts:
    3
    Hi, I have some question of the listview.

    Is is support to multi selected items drag-drop to othrer control(such as listview, textblock, or something else)?

    Thanks.
     
  5. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih

    We have Popoup with custom content, now we need action sheet with custom content
    https://ionicframework.com/docs/api/action-sheet

    Please provide action sheet where we pass custom content just like Popup with custom content, and based on content height this sheet appears either from below or from top
     
  6. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    There is no such support by default, but it can be added with custom drag-and-drop components.
    Drag component:
    Code (CSharp):
    1. namespace UIWidgets.Examples
    2. {
    3.     using System.Collections.Generic;
    4.     using UIWidgets;
    5.     using UnityEngine;
    6.     using UnityEngine.EventSystems;
    7.  
    8.     [RequireComponent(typeof(ListViewIcons))]
    9.     public class ListViewIconsMultipleDragSupport : DragSupport<List<ListViewIconsItemDescription>>
    10.     {
    11.         protected ListViewIcons ListView;
    12.  
    13.         protected override void Start()
    14.         {
    15.             base.Start();
    16.             ListView = GetComponent<ListViewIcons>();
    17.         }
    18.  
    19.         protected override void InitDrag(PointerEventData eventData)
    20.         {
    21.             ListView = GetComponent<ListViewIcons>();
    22.             Data = ListView.SelectedItems;
    23.         }
    24.  
    25.         public override void Dropped(bool success)
    26.         {
    27.             if (success)
    28.             {
    29.                 // here dropped items can be removed from ListView in necessary
    30.             }
    31.  
    32.             base.Dropped(success);
    33.         }
    34.     }
    35. }
    Drop component for ListView:
    Code (CSharp):
    1. namespace UIWidgets.Examples
    2. {
    3.     using System.Collections.Generic;
    4.     using UIWidgets;
    5.     using UnityEngine;
    6.     using UnityEngine.EventSystems;
    7.  
    8.     [RequireComponent(typeof(ListViewIcons))]
    9.     public class ListViewIconsMultipleDropSupport : MonoBehaviour, IDropSupport<List<ListViewIconsItemDescription>>
    10.     {
    11.         protected ListViewIcons ListView;
    12.  
    13.         protected virtual void Start()
    14.         {
    15.             ListView = GetComponent<ListViewIcons>();
    16.         }
    17.  
    18.         public void Drop(List<ListViewIconsItemDescription> data, PointerEventData eventData)
    19.         {
    20.             ListView.DataSource.AddRange(data);
    21.         }
    22.  
    23.         public bool CanReceiveDrop(List<ListViewIconsItemDescription> data, PointerEventData eventData)
    24.         {
    25.             return true;
    26.         }
    27.  
    28.         public void DropCanceled(List<ListViewIconsItemDescription> data, PointerEventData eventData)
    29.         {
    30.         }
    31.     }
    32. }
    Drop component for InputField:
    Code (CSharp):
    1. namespace UIWidgets.Examples
    2. {
    3.     using System.Collections.Generic;
    4.     using UIWidgets;
    5.     using UnityEngine;
    6.     using UnityEngine.EventSystems;
    7.     using UnityEngine.UI;
    8.  
    9.     [RequireComponent(typeof(InputField))]
    10.     public class InputFieldMultipleDropSupport : MonoBehaviour, IDropSupport<List<ListViewIconsItemDescription>>
    11.     {
    12.         protected InputField InputField;
    13.  
    14.         protected virtual void Start()
    15.         {
    16.             InputField = GetComponent<InputField>();
    17.         }
    18.  
    19.         public void Drop(List<ListViewIconsItemDescription> data, PointerEventData eventData)
    20.         {
    21.             var str = string.Empty;
    22.             foreach (var item in data)
    23.             {
    24.                 str += item.Name + "\n";
    25.             }
    26.  
    27.             InputField.text = str;
    28.         }
    29.  
    30.         public bool CanReceiveDrop(List<ListViewIconsItemDescription> data, PointerEventData eventData)
    31.         {
    32.             return true;
    33.         }
    34.  
    35.         public void DropCanceled(List<ListViewIconsItemDescription> data, PointerEventData eventData)
    36.         {
    37.         }
    38.     }
    39. }
     
    Last edited: Jul 9, 2021
  7. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    I'll add it in the next update.
    But such an action sheet can be done with dialog:
    upload_2021-7-9_14-6-33.png
    Buttons have different templates with parent game objects.
    Code (CSharp):
    1. namespace UIWidgets.Examples
    2. {
    3.     using UnityEngine;
    4.  
    5.     public class DialogActionsSheet : MonoBehaviour
    6.     {
    7.         [SerializeField]
    8.         Dialog Template;
    9.  
    10.         bool Action(int buttonIndex)
    11.         {
    12.             Debug.Log("clicked: " + buttonIndex);
    13.             return true;
    14.         }
    15.  
    16.         const int RedButton = 0;
    17.         const int DefaultButton = 1;
    18.         const int CancelButton = 2;
    19.  
    20.         public void Open()
    21.         {
    22.             var actions = new DialogButton[]
    23.             {
    24.                 new DialogButton("Delete", Action, RedButton),
    25.                 new DialogButton("Share", Action, DefaultButton),
    26.                 new DialogButton("Play", Action, DefaultButton),
    27.                 new DialogButton("Favorite", Action, DefaultButton),
    28.                 new DialogButton("Cancel", Action, CancelButton),
    29.             };
    30.  
    31.             Template.Clone().Show(
    32.                 title: "Albums",
    33.                 buttons: actions,
    34.                 focusButton: "Cancel",
    35.                 modal: true,
    36.                 modalColor: new Color(0, 0, 0, 0.8f));
    37.         }
    38.     }
    39. }
     
    jGate99 likes this.
  8. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749

    Thanks, but i need it with custom content, this way i can for example do something like that
    07.4.2_new_member.png
     
  9. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih,
    How do i customize look of Non Selected Items in scrollblock

    upload_2021-7-9_17-22-29.png

    For example, I want to have a different font size and color for non selected (or non middle) items. I can easily achieve this with ListView's ViewComponent by overrding its functions,
    But ScrollBlockItem doesnt seem to have anything like that
    upload_2021-7-9_17-47-51.png
     
    Last edited: Jul 9, 2021
  10. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Added
    content
    and
    onCclose
    parameter to Popup.Show method in v1.15.0b6; works the same way as dialog.

    Added DataChanged method to ScrollBlockItem class in v1.15.0b6.
    An item with Index = 0 is a selected item; items before it have a negative index; items after it have a positive index.
    Usage:
    Code (CSharp):
    1.         public override void DataChanged()
    2.         {
    3.             Text.Bold = Index == 0;
    4.             Text.fontSize = Index == 0 ? 20 : 14;
    5.         }
    6.  
     
    jGate99 likes this.
  11. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Thanks for the update,
    As you added custom content in popup, rather than creating a seperate control that appears from behind or above like actionsheet (but with custom content) so i'm confused
    Isnt Dialog and Popup are the same thing now?
    When to use Popup and when to use Dialog (assuming we are using custom content)

    and most importantly how we show actionsheet that appears from below (sliding animation )
     
  12. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    I did that but it seems buggy, check the video please
    https://we.tl/t-ZdHuoBI2yX


    Code (CSharp):
    1.       public override void DataChanged()
    2.         {
    3.  
    4.             var color = Text.color;
    5.        
    6.             color.a = Index == 0 ? 1 : 0.5f;
    7.  
    8.             Text.color = color;
    9.         }

    Update 2:
    and please also make this function in ScrollBlock virtual because I overrided this than Datachanged so i can do this stuff on Parent level (due to color and font size information persisist) than item level

    virtual protected void SetComponentText(ScrollBlockItem component)


    Update 3:
    Ideally, It'd be great if we have a ScrollBlock<T> where T:ScrollBlockItem
    this way we can have typed version of our own subclassed ScrollBlock and ScrollBlockItem


    Update 4:
    Can you please also remove hard limit of Mask on ScrollBlock, as i want to use RectMask2D for performance reasons.

    [RequireComponent(typeof(Mask))]
    public class ScrollBlock
     
    Last edited: Jul 10, 2021
  13. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Popup is a simplified dialog without custom buttons.

    After
    Show()
    call you can run any custom animation with popup instance.
    Example for v1.15.0b7:
    Code (CSharp):
    1.     public class PopupAnimation : MonoBehaviour
    2.     {
    3.         [SerializeField]
    4.         Popup Template;
    5.  
    6.         [SerializeField]
    7.         AnimationCurve Curve = AnimationCurve.EaseInOut(0f, 1f, 0.3f, 0f);
    8.  
    9.         [SerializeField]
    10.         bool UnscaledTime = true;
    11.  
    12.         public void Show()
    13.         {
    14.             var popup = Template.Clone();
    15.             popup.Show("Test Animation", string.Empty);
    16.  
    17.             Animate(popup.transform as RectTransform);
    18.         }
    19.  
    20.         void Animate(RectTransform target)
    21.         {
    22.             // set initial position
    23.             target.anchoredPosition = Vector2.zero;
    24.             target.anchorMin = new Vector2(0.5f, 0f);
    25.             target.anchorMax = new Vector2(0.5f, 0f);
    26.             target.pivot = new Vector2(0.5f, 1f);
    27.  
    28.             void set(float y) => target.pivot = new Vector2(target.pivot.x, y);
    29.  
    30.             StartCoroutine(Animations.Run(Curve, UnscaledTime, set));
    31.         }
    32.     }
    Fixed in v1.15.0b7.

    Done.

    Done.

    Done.
     
    jGate99 likes this.
  14. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749

    Thanks for these updates.

    Can you please also make ListViewAutoReSize use LayoutElement rather than RectTransform
    As I'm using this ListView inside a custom dialog
     
  15. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih,

    Please check this, listview is hiding the first item and i'm not sure why this is happening
    When we scroll it shows the first item, but then hide it again if we scroll to top with mouse
    https://we.tl/t-W6tjXsFwg1

    Please advise
     
  16. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    ListViewAutoResize is implementing the ILayoutElement interface, so it already works like LayoutElement.
    So LayoutElement component is unnecessary.

    What ListView ListType is used?
    Any components on ListView?
     
    jGate99 likes this.
  17. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    So ListView (Vertical, Variable Size) is inside a
    Custom Content Dialog, where Content is VerticalLayout with ContentSizeFitter VerticalFit to Prefered
    and DefaultItem is using HorizontalLayout (rather than EasyLayout)
     
  18. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    • what are ListView Container RectTransform settings when the first item is hidden?
    • when the first item is hidden: the game object to display this item exists and active or not?
    • is the problem happens with the default ListViewIcons with the same settings as the current ListView?
    • Unity version?
     
  19. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Meanwhile let me see

    upload_2021-7-12_17-22-45.png

    Unity 2020.3.13f1
     
  20. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Also, what is the ListView.Container.EasyLayout.ChildrenHeight setting?
    And are there any errors or warnings in the console?
     
    jGate99 likes this.
  21. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Its Preffered,

    BTW, even though i couldnt regenerate it with your other list

    however if i have more than 5 items (so scrollbar appears) then it acts properly
    it only hides the first item when there are less items than list height
     
  22. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Can you make a minimal project with this error and send it to support@ilih.ru?
     
  23. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Please update to v1.15.0b8 and show result of
    ListView.PringDebugInfo()
    method call.
     
    jGate99 likes this.
  24. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749

    Direction: Vertical
    Type: ListViewWithVariableSize
    Virtualization: True
    DataSource.Count: 3
    DefaultItem Size: (259.5, 12.0)
    ScrollRect Size: (266.5, 218.0)
    Looped: False
    Centered: False
    Precalculate Sizes: True
    DisplayedIndices (count: 2): 1; 2
    #############
    **Renderer Info**
    IsTileView: False
    Max Visible Items: 39
    Visibility
    Visibility.FirstVisible: 1
    Visibility.LastVisible: 3
    Visibility.Items: 2
    First Visible Index: 1
    Last Visible Index: 4
    List Size: 68.52
    Items Per Block: 1
    Top Filler: 5
    Bottom Filler: 0
    Items
    0. size: (399.4, 0.0); position: 0; block: 0
    1. size: (259.5, 29.3); position: 5; block: 1
    2. size: (259.5, 29.3); position: 39.26; block: 2
    #############
    **Layout Info**
    Layout: EasyLayout
    Main Axis: Horizontal
    Type: Compact
    Group Position: UpperLeft
    Row Align: Left
    Inner Align: Top
    Compact Constraint: MaxColumnCount
    Compac



    ====

    BTW, you go beyond to provide support, I have never seen anyone with this type of dedication toward his customers, you are amazing
    If above debug log, doesnt help, then i'll prepare a sample project which hopefully shows this exact case
     
  25. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Fix:
    1. file New UI Widgets / Scripts / ListView / ListViewType / ListViewTypeBase.cs
      CalculateComponentSize()
      method
      before line:
      Code (CSharp):
      1. return size;
      add lines:
      Code (CSharp):
      1.                 if (size.x < 1f)
      2.                 {
      3.                     size.x = 1f;
      4.                 }
      5.  
      6.                 if (size.y < 1f)
      7.                 {
      8.                     size.y = 1f;
      9.                 }
    2. file New UI Widgets / Scripts / ListView / ListViewType / ListViewTypeSize.cs
      UpdateItemSize()
      method
      before line:
      Code (CSharp):
      1. var item = Owner.DataSource[index];
      add lines:
      Code (CSharp):
      1.                 if (newSize.x < 1f)
      2.                 {
      3.                     newSize.x = 1f;
      4.                 }
      5.  
      6.                 if (newSize.y < 1f)
      7.                 {
      8.                     newSize.y = 1f;
      9.                 }
     
    jGate99 likes this.
  26. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Great, I can see the item now.
    Is this going to cause any performance problem? Do i need to create a sample project?
     
  27. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    No.
    I'll try to find a more appropriate fix, but not sure if it will be possible.

    No, I was able to reproduce the problem with the information in the previous message.
     
    jGate99 likes this.
  28. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih,
    Currently ListView (default item) or Dialog (template) create a new copy and then reuses it
    Can we have an option where it reuses the same default item for list, and then create copies when needed

    For example, in my app, i'll never or rarely show alert twice at the same so same instance can be used and similar for default item.
     
  29. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    ListView: it will be very difficult to implement (for example: do not destroy template along with its instances; calculate items sizes if list type is variable size).
    So I think it better spends time to add another more useful feature, than this.

    Dialog/Popup/Picker: you can use the template without creating a copy (it will show a warning, but will work):
    Code (CSharp):
    1. Template.gameObject.SetActive(true);
    2. Template.Show(...);
    instead of:
    Code (CSharp):
    1. Template.Clone().Show(...);
     
    jGate99 likes this.
  30. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Thats better then, thanks
     
  31. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih,
    It seems like DefaultItem's Margin (y axis) is not working from recent updates.
    Please check

    upload_2021-7-22_5-25-41.png
     
    Last edited: Jul 22, 2021
  32. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Fixed in v1.15.0b11.
     
    jGate99 likes this.
  33. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih
    Just like you provided functions to get all default templates (including inactive) for listview
    Similarly, i need for dialogs
     
  34. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    You can use this code:
    Code (CSharp):
    1. var closed_dialogs = Dialog.Templates.CachedInstances(DialogTemplate.name);
    2. var opened_dialogs = Dialog.OpenedDialogs;
    If you use a custom dialog class, then you need to replace
    Dialog
    with you class.
     
    jGate99 likes this.
  35. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Please check if this is right approach?


    Code (CSharp):
    1. public abstract class MyDialogBase<TDialog> : DialogCustom<TDialog>
    2. where TDialog:MyDialogBase<TDialog>
    3. {
    4. }
    5.  
    6. //Now another generic class which will be using templates generically is
    7.  
    8. public abstract class MyAllDialogsCustomFuncGeneric<TDialog> : MonoBehaviour
    9.     where TDialog:MyDialogBase<TDialog>  
    10. {
    11.  
    12. public TDialog InputDialog;
    13.  
    14.  
    15. public void Apply()
    16. {
    17.  
    18.  
    19.     DialogCustom<TDialog>.Templates.CachedInstances(InputDialog.TemplateName);
    20.      
    21.  
    22. }
    23.  
    24.  
    25.  
    26. }
    Because this doeosnt work
    TDialog.Templates.CachedInstances(TDialog.name);
     
  36. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Another questions,

    1- how do i change Modal color of an already oppened dialog?

    2- Please remind how can we have a different button for primary button? For example i want to show Yes differently than No

    3- I also want to in active buttons group if there is no button, how can i do that?
     
    Last edited: Jul 26, 2021
  37. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Yes, this will not work.

    Add the following code to the DialogCustom class:
    Code (CSharp):
    1.         public List<TDialog> InactiveDialogs
    2.         {
    3.             get
    4.             {
    5.                 return Templates.CachedInstances(TemplateName);
    6.             }
    7.         }
    8.  
    9.         public List<TDialog> AllDialogs
    10.         {
    11.             get
    12.             {
    13.                 var dialogs = InactiveDialogs;
    14.                 dialogs.AddRange(OpenedDialogs);
    15.  
    16.                 return dialogs;
    17.             }
    18.         }
    then you can use:
    Code (CSharp):
    1. public void Apply()
    2. {
    3.     var dialogs = InputDialog.AllDialogs();
    4. }
    Use
    SetModal()
    method:
    Code (CSharp):
    1.         Dialog currentDialog;
    2.  
    3.         /// <summary>
    4.         /// Show dialog.
    5.         /// </summary>
    6.         public void ShowDialog()
    7.         {
    8.             var actions = new DialogButton[]
    9.             {
    10.                 new DialogButton("Close", Dialog.AlwaysClose),
    11.             };
    12.  
    13.             currentDialog = DialogTemplate.Clone();
    14.             currentDialog.Show();
    15.         }
    16.  
    17.         public void ChangeColor()
    18.         {
    19.             currentDialog.SetModal(true, modalColor: Color.red);
    20.         }
    21.  
    Add a new button to Dialog.ButtonsTemplates.
    upload_2021-7-26_13-36-33.png
    Then pass button template index as third parameter in DialogButton constructor
    Code (CSharp):
    1.  
    2.             var actions = new DialogButton[]
    3.             {
    4.                 new DialogButton("Primary Button", Dialog.AlwaysClose, 1),
    5.                 new DialogButton("Default Button", Dialog.AlwaysClose, 0),
    6.             };
    7.  
    8.             DialogTemplate.Clone().Show(
    9.                 buttons: actions
    10.            );
    11.  
    Sorry, I do really understand the question.
    If you want to disable buttons parent gameobject, then you can override the
    SetButtons()
    method:
    Code (CSharp):
    1.         [SerializeField]
    2.         GameObject ButtonsContainer;
    3.  
    4.         public override void SetButtons(IList<DialogButton> buttons, string focusButton = null)
    5.         {
    6.             ButtonsContainer.gameObject.SetActive(buttons.Count > 0);
    7.             base.SetButtons(buttons, focusButton);
    8.         }
     
    jGate99 likes this.
  38. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih
    Did recent updates broke ListViewHeader? My listview header is gone
     
  39. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Yes, sorry, I was fixing the EasyLayout bug with resize and broke compatibility with existing usage.
    Fix:
    Replace
    minWidth
    ,
    minHeight
    ,
    preferredWidth
    ,
    preferredHeight
    properties in EasyLayout.cs:
    Code (CSharp):
    1.         public override float minWidth
    2.         {
    3.             get
    4.             {
    5.                 return (ChildrenWidth == ChildrenSize.DoNothing) ? CurrentSize.Width : CurrentSize.MinWidth;
    6.             }
    7.         }
    8.  
    9.         public override float minHeight
    10.         {
    11.             get
    12.             {
    13.                 return (ChildrenHeight == ChildrenSize.DoNothing) ? CurrentSize.Height : CurrentSize.MinHeight;
    14.             }
    15.         }
    16.  
    17.         public override float preferredWidth
    18.         {
    19.             get
    20.             {
    21.                 return (ChildrenWidth == ChildrenSize.DoNothing) ? CurrentSize.Width : CurrentSize.PreferredWidth;
    22.             }
    23.         }
    24.  
    25.         public override float preferredHeight
    26.         {
    27.             get
    28.             {
    29.                 return (ChildrenHeight == ChildrenSize.DoNothing) ? CurrentSize.Height : CurrentSize.PreferredHeight;
    30.             }
    31.         }
     
    jGate99 likes this.
  40. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    I would like to populate ListView with data from the SimpleSQL asset. It produces basic lists, strings, and tables from queries. I'm assuming listView.DataSource accepts standard lists as input.


    var List<Weapons> weapons = dbManager.Query<Weapons>("SELECT * FROM Weapons");
    listView.DataSource = weapons;
     
  41. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    ListView uses ObservableList to automatically update the view when items are added/removed, or changed.

    So
    List<T>
    should be converted to
    ObservableList<T>
    like this:
    Code (CSharp):
    1. ListView.DataSource = new ObservableList<Weapons>(weapons);
    or this:
    Code (CSharp):
    1. using UIWidgets.Extensions;
    2.  
    3. ListView.DataSource = weapons.ToObservableList();
     
    Last edited: Aug 11, 2021
    JohnnyFactor likes this.
  42. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    That's great thanks.

    I have another question about Combobox. I noticed in the demo that they are not selectable except on the arrow sprite, but it's standard UX convention to have the whole box clickable. Can this be changed to include the entire box?
     
  43. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Yes.

    You need to:
    • move an icon to the separate child game object
    • change button Image.Color to transparent
    • stretch the button
    Example:
    upload_2021-8-11_23-12-24.png
     
    JohnnyFactor likes this.
  44. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    Right, that makes sense. I was thinking it was hard coded or something.
     
  45. aggaton

    aggaton

    Joined:
    Jul 3, 2021
    Posts:
    104
    Tried adding a Listview, get a ton of errors. Pretty much any UI element I add result in error. Using unity 2021.1.13f1

    Code (Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(322,38): error CS0311: The type 'UnityEngine.TextAsset' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UnityEngine.TextAsset' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(355,38): error CS0315: The type 'UIWidgets.ListViewDirection' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no boxing conversion from 'UIWidgets.ListViewDirection' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(498,38): error CS0311: The type 'UIWidgets.ListViewCustomEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewCustomEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(509,38): error CS0315: The type 'UIWidgets.ListViewSources' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no boxing conversion from 'UIWidgets.ListViewSources' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(520,38): error CS0311: The type 'UIWidgets.ListViewCustomEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewCustomEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(531,38): error CS0311: The type 'UIWidgets.ListViewFocusEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewFocusEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(586,38): error CS0311: The type 'UIWidgets.ListViewEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(597,38): error CS0311: The type 'UIWidgets.ListViewEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(641,38): error CS0315: The type 'UnityEngine.UI.Navigation' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no boxing conversion from 'UnityEngine.UI.Navigation' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(652,38): error CS0311: The type 'UIWidgets.ListViewBaseEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewBaseEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(663,38): error CS0311: The type 'UIWidgets.ListViewBaseEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewBaseEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(674,38): error CS0311: The type 'UnityEngine.Events.UnityEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UnityEngine.Events.UnityEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(685,38): error CS0311: The type 'UnityEngine.Events.UnityEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UnityEngine.Events.UnityEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(696,38): error CS0311: The type 'UnityEngine.Events.UnityEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UnityEngine.Events.UnityEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(707,38): error CS0311: The type 'UnityEngine.Events.UnityEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UnityEngine.Events.UnityEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(718,38): error CS0311: The type 'UIWidgets.ListViewFocusEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UIWidgets.ListViewFocusEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(729,38): error CS0311: The type 'UnityEngine.Events.UnityEvent' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no implicit reference conversion from 'UnityEngine.Events.UnityEvent' to 'System.IComparable'. Assets\New UI Widgets\Scripts\ListView\WidgetsListView\Scripts\ComparersListView.cs(740,38): error CS0315: The type 'UnityEngine.HideFlags' cannot be used as type parameter 'T' in the generic type or method 'UtilitiesCompare.Compare(T, T)'. There is no boxing conversion from 'UnityEngine.HideFlags' to 'System.IComparable'. [/code):
    1.  
     
  46. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    What type are you used for the generated ListView?
    Looks like you generated widgets, then change field/properties type to others types that are not supported.

    Briefly:
    • DataType
      (type for the widgets generation) contains data that should be displayed and should not have UI elements
    • {WidgetType}Component{DataType}
      type contains widgets/UI elements and determines how datatype should be displayed
    If you want to change how fields are displayed then:
    • open
      ListViewComponent{DataType}
      file and change the type of UI element (widget) that are used to display field value.
    • open ListView prefab, then DefaultItem, and replace the UI element with a new one
    • set a reference to new the UI element in the DefaultItem.
      ListViewComponent{DataType}

    For example:
    By default used TextAdapter (it is proxy for Text or TMPro):
    public UIWidgets.TextAdapter Number;

    It can be replaced with Spinner:
    public UIWidgets.Spinner Number;

    then you need to open ListView prefab -> DefaultItem, replace the Text game object with Spinner, and replace reference.
     
    Last edited: Aug 12, 2021
  47. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,749
    Hi @ilih,

    Can you please provide a carousel example like this?
    https://we.tl/t-1CA0SeKa95

    In their carousel when we start moving both background and text content moves as well in slightly different way.
     
  48. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    I'll think about how to implement this.
     
    jGate99 likes this.
  49. ilih

    ilih

    Joined:
    Aug 6, 2013
    Posts:
    1,239
    Added in v1.15.0b17
    Please check the example scene at "New UI Widgets / Examples / ScrollRectUtilities / DoubleCarousel.unity".
    It uses:
    • ScrollView with labels
    • ScrollView with images
    • ScrollRectPaginator attached to ScrollView with labels
    • DoubleCarousel script: it's listening ScrollRectPaginator movements and scrolls ScrollViewImages in reverse direction
     
    jGate99 likes this.
  50. aggaton

    aggaton

    Joined:
    Jul 3, 2021
    Posts:
    104
    @ilih I am getting a stack overflow error when I try out the ListViewIconsExt example (might fail on others), seems like maybe the change management system is recursively calling itself? I'm using unity version 2021.1.13f1.

    Code (CSharp):
    1. StackOverflowException: The requested operation caused a stack overflow.
    2. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    3. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    4. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    5. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    6. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    7. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    8. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    9. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    10. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    11. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    12. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    13. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    14. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    15. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    16. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    17. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    18. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    19. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    20. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    21. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    22. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    23. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    24. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    25. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    26. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    27. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    28. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    29. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    30. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    31. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    32. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    33. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    34. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    35. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    36. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    37. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    38. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    39. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    40. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    41. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    42. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    43. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    44. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    45. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    46. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    47. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    48. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    49. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    50. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    51. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    52. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    53. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    54. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    55. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    56. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    57. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    58. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    59. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    60. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    61. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    62. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    63. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    64. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    65. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    66. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    67. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    68. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    69. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    70. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    71. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    72. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    73. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    74. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    75. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    76. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    77. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    78. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    79. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    80. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    81. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    82. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    83. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    84. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    85. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    86. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    87. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    88. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    89. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    90. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    91. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    92. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    93. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    94. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    95. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    96. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    97. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    98. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    99. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    100. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    101. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    102. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    103. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    104. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    105. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    106. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    107. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    108. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    109. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    110. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    111. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    112. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    113. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    114. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    115. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    116. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    117. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    118. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    119. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    120. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    121. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    122. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    123. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    124. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    125. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    126. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    127. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    128. UIWidgets.ListViewCustom`2[TComponen<message truncated>
    129. StackOverflowException: The requested operation caused a stack overflow.
    130. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    131. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    132. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    133. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    134. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    135. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    136. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    137. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    138. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    139. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    140. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    141. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    142. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    143. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    144. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    145. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    146. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    147. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    148. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    149. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    150. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    151. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    152. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    153. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    154. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    155. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    156. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    157. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    158. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    159. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    160. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    161. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    162. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    163. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    164. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    165. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    166. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    167. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    168. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    169. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    170. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    171. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    172. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    173. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    174. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    175. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    176. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    177. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    178. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    179. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    180. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    181. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    182. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    183. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    184. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    185. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    186. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    187. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    188. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    189. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    190. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    191. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    192. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    193. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    194. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    195. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    196. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    197. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    198. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    199. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    200. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    201. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    202. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    203. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    204. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    205. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    206. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    207. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    208. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    209. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    210. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    211. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    212. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    213. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    214. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    215. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    216. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    217. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    218. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    219. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    220. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    221. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    222. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    223. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    224. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    225. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    226. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    227. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    228. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    229. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    230. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    231. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    232. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    233. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    234. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    235. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    236. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    237. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    238. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    239. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    240. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    241. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    242. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    243. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    244. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    245. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    246. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    247. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    248. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    249. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    250. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    251. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    252. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    253. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    254. UIWidgets.ListViewCustom`2[TComponent,TItem].get_DataSource () (at Assets/New UI Widgets/Scripts/ListView/ListViewCustom.cs:92)
    255. UIWidgets.Examples.ListViewIconsExt.Init () (at Assets/New UI Widgets/Examples/ListView/ListViewIconsExt/ListViewIconsExt.cs:63)
    256. UIWidgets.ListViewCustom`2[TComponen<message truncated>
    257.