Class: Formotion::RowType::ActivityRow

Inherits:
ObjectRow show all
Defined in:
lib/formotion/row_type/activity_view_row.rb

Constant Summary

Constants inherited from StringRow

StringRow::TEXT_FIELD_TAG

Instance Attribute Summary

Attributes inherited from Base

#row, #tableView

Instance Method Summary collapse

Methods inherited from ObjectRow

#build_cell, #row_value, #update_text_field

Methods inherited from StringRow

#add_callbacks, #build_cell, #done_editing, #keyboardType, #on_change, #row_value, #update_text_field

Methods inherited from Base

#_on_select, #after_delete, #break_with_semaphore, #build_cell, #button?, #cellEditingStyle, #cell_style, #delete_row, #done_editing, field_buffer, #indentWhileEditing?, #initialize, #input_accessory_view, #on_delete, #update_cell, #with_semaphore

Constructor Details

This class inherits a constructor from Formotion::RowType::Base

Instance Method Details

#after_build(cell) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/formotion/row_type/activity_view_row.rb', line 7

def after_build(cell)
  super

  cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator
  self.row.text_field.hidden = true

  row.value = {items:[row.value]} unless row.value.is_a?(Hash)
  row.value = {
    excluded: [],
    animated: true,
    app_activities: nil,
    completion: nil
  }.merge(row.value)
  row.value[:items] = [row.value[:items]] unless row.value[:items].is_a?(Array)

end

#on_select(tableView, tableViewDelegate) ⇒ Object



24
25
26
27
28
29
30
# File 'lib/formotion/row_type/activity_view_row.rb', line 24

def on_select(tableView, tableViewDelegate)
  activity_vc = UIActivityViewController.alloc.initWithActivityItems(row.value[:items], applicationActivities:row.value[:app_activities])
  activity_vc.modalTransitionStyle = UIModalTransitionStyleCoverVertical
  activity_vc.excludedActivityTypes = row.value[:excluded]

  row.form.controller.presentViewController(activity_vc, animated:row.value[:animated], completion:row.value[:completion])
end