Class: Tgios::UIPickerViewListBinding

Inherits:
BindingBase show all
Defined in:
lib/tgios/ui_picker_view_list_binding.rb

Instance Method Summary collapse

Methods inherited from BindingBase

#dealloc, #hook, #prepareForRelease, #unhook

Constructor Details

#initializeUIPickerViewListBinding

Returns a new instance of UIPickerViewListBinding.



3
4
5
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 3

def initialize
  @events={}
end

Instance Method Details

#bind(picker_view, list: list, display_field: display_field) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 11

def bind(picker_view, list: list, display_field: display_field)
  @picker_view=WeakRef.new(picker_view)
  @list=WeakRef.new(list)
  @display_field=display_field
  @picker_view.dataSource=self
  @picker_view.delegate=self
end

#numberOfComponentsInPickerView(pickerView) ⇒ Object



20
21
22
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 20

def numberOfComponentsInPickerView(pickerView)
  1
end

#on(event_name, &block) ⇒ Object



7
8
9
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 7

def on(event_name, &block)
  @events[event_name]=block
end

#onPrepareForReleaseObject



45
46
47
48
49
50
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 45

def onPrepareForRelease
  @events=nil
  @picker_view.dataSource=nil
  @picker_view.delegate=nil
  @list=nil
end

#pickerView(pickerView, didSelectRow: row, inComponent: component) ⇒ Object



24
25
26
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 24

def pickerView(picker_view, numberOfRowsInComponent:section)
  @list.length
end

#select_record(record) ⇒ Object



40
41
42
43
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 40

def select_record(record)
  idx = (@list.find_index(record) || 0)
  @picker_view.selectRow(idx, inComponent:0, animated: false)
end

#selected_recordObject



36
37
38
# File 'lib/tgios/ui_picker_view_list_binding.rb', line 36

def selected_record
  @list[@picker_view.selectedRowInComponent(0)]
end