Advertisement
Guest User

Untitled

a guest
Feb 24th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.96 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using Foundation;
  4. using UIKit;
  5.  
  6. namespace Woozy
  7. {
  8. public abstract class AbstractWoozyTableViewSource<T> : UITableViewDataSource
  9. {
  10.  
  11. private List<T> _data;
  12.  
  13.  
  14. public List<T> DataList
  15. {
  16. get { return _data; }
  17. set
  18. {
  19. _data = value;
  20. }
  21. }
  22.  
  23. public delegate void CellRowSelectedEvent(T item);
  24. public event CellRowSelectedEvent RowSelectedEvent;
  25.  
  26. public AbstractWoozyTableViewSource()
  27. {
  28. }
  29.  
  30.  
  31. public override nint RowsInSection(UITableView tableView, nint section)
  32. {
  33. if (_data != null)
  34. {
  35. return _data.Count;
  36. }
  37.  
  38. return 0;
  39. }
  40.  
  41. public void RowSelected(UITableView tableView, NSIndexPath indexPath)
  42. {
  43. tableView.DeselectRow(indexPath, true);
  44.  
  45. T item = _data[indexPath.Row];
  46. if (RowSelectedEvent != null)
  47. {
  48. RowSelectedEvent(item);
  49. }
  50.  
  51. }
  52.  
  53. public static implicit operator UITableViewSource(AbstractWoozyTableViewSource<T> v)
  54. {
  55. return (UITableViewSource)v;
  56. }
  57. }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement