Sha256: 9028e745cfcc92f541fd92f8a643ded9832b7aed4bdb9e3a9cc99c6372523890
Contents?: true
Size: 1.05 KB
Versions: 6
Compression:
Stored size: 1.05 KB
Contents
module Formotion module RowType class OptionsRow < Base include BW::KVO def build_cell(cell) cell.selectionStyle = UITableViewCellSelectionStyleNone segmentedControl = UISegmentedControl.alloc.initWithItems(row.items || []) segmentedControl.selectedSegmentIndex = row.items.index(row.value) if row.value segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar cell.accessoryView = cell.editingAccessoryView = segmentedControl segmentedControl.when(UIControlEventValueChanged) do break_with_semaphore do row.value = row.items[segmentedControl.selectedSegmentIndex] end end observe(self.row, "value") do |old_value, new_value| break_with_semaphore do if row.value segmentedControl.selectedSegmentIndex = row.items.index(row.value) else segmentedControl.selectedSegmentIndex = UISegmentedControlNoSegment end end end nil end end end end
Version data entries
6 entries across 6 versions & 1 rubygems