def tableview_cell_for_row(self, tableview, section, row):
param = self.params[row]
name = param.displayName
cell = None
if name == None or name == '':
name = param.name
if param.type == 'bool':
cell = ui.TableViewCell()
cell.selectable = False
switch = ui.Switch()
switch.name = param.name
switch.value = param.value
switch.y = cell.center.y - switch.height/2
switch.x = cell.width + switch.width/2
switch.action = self.switch_change
cell.add_subview(switch)
else:
cell = ui.TableViewCell('value1')
if not param.value == None:
cell.detail_text_label.text = str(param.value)
cell.detail_text_label.text_color = self.thememanager.main_text_colour
cell.text_label.text = name
cell.background_color = self.thememanager.main_background_colour
cell.text_label.text_color = self.thememanager.main_text_colour
return cell
python类TableViewCell()的实例源码
def tableview_cell_for_row(self, tableview, section, row):
cell = ui.TableViewCell('subtitle')
cell.accessory_type = 'disclosure_indicator'
if self.is_main():
text = self.source[row]['title']
cell.text_label.text = text
if 'copyright' in self.source[row]:
cell.detail_text_label.text = self.source[row]['copyright']
else:
cell.text_label.text = self.source[row]
tableview.row_height = 48
cell.image_view.image = ui.Image.named(self.source[row])
if self.dark_cells:
cell.image_view.background_color = 'black'
return cell
def tableview_cell_for_row(self, tableview, section, row):
cell = ui.TableViewCell()
cell.text_label.text = self.flows[row]
cell.background_color = self.thememanager.main_background_colour
cell.text_label.text_color = self.thememanager.main_text_colour
cell.selectable = True
return cell
def tableview_cell_for_row(self, tableview, section, row):
cell = ui.TableViewCell()
if section == 0:
cell.text_label.text = self.tables[row]
elif section == 1:
cell.text_label.text = self.views[row]
else:
cell.text_label.text = self.systemtables[row]
cell.selectable = True
return cell
def tableview_cell_for_row(self, tableview, section, row):
cell = ui.TableViewCell('subtitle')
if section == 0:
nullable = self.tinfo[row][3] == 1
cell.text_label.text = self.tinfo[row][1]
fmt = 'Type: {} Nullable: {} Default: {}'
cell.detail_text_label.text = fmt.format(self.tinfo[row][2], nullable, self.tinfo[row][4])
elif section == 1:
cell.text_label.text = self.iinfo[row][1]
cell.selectable = False
return cell
def tableview_cell_for_row(self, tableview, section, row):
cell = ui.TableViewCell('value1')
if section == 0:
if row == 0:
cell.text_label.text = 'Record'
cell.detail_text_label.text = self.return_count_label()
else:
cell.text_label.text = str(self.tkeys[row-1])
cell.detail_text_label.text = str(self.tdata[self.currentid-1][row-1])
cell.selectable = False
return cell
def tableview_cell_for_row(self, tableview, section, row):
cell = ui.TableViewCell()
cell.text_label.text = self.files[row]
return cell
def tableview_cell_for_row(self, tv, section, row):
item = self._filtered_items[row]
cell = ui.TableViewCell(UITableViewCellStyle.subtitle.value)
cell.text_label.number_of_lines = 1
cell.text_label.text = item.title
cell.detail_text_label.text = item.subtitle
cell.detail_text_label.text_color = (0, 0, 0, 0.5)
if item.image:
cell.image_view.image = item.image
return cell
def tableview_cell_for_row(self, tv, section, row):
item = self.filtered_items[row]
cell = TableViewCell(UITableViewCellStyle.subtitle.value)
cell.text_label.number_of_lines = 1
cell.text_label.text = item.title
cell.detail_text_label.text = item.subtitle
cell.detail_text_label.text_color = (0, 0, 0, 0.5)
return cell
def tableview_cell_for_row(self, tableview, section, row):
if row >= self.extraRows:
element = self.elements[row-self.extraRows]
cell = ui.TableViewCell('subtitle')
cell.selectable = False
cell.text_label.text = element.get_title()
cell.detail_text_label.text = element.get_description()
cell.background_color=self.thememanager.main_background_colour
cell.image_view.image = ui.Image.named(element.get_icon())
params = element.get_params() or []
selectable = False
for p in params:
if p.display:
selectable = True
cell.accessory_type = 'disclosure_indicator'
cell.selectable = selectable
if self.currentElementNumber >= self.extraRows:
cell.selectable = False
if self.currentElementNumber+1 == row:
cell.background_color = self.thememanager.running_cell_background_colour
cell.text_label.text_color = self.thememanager.running_cell_text_colour
cell.detail_text_label.text_color = self.thememanager.running_cell_text_colour
else:
cell.background_color = self.thememanager.main_background_colour
cell.text_label.text_color = self.thememanager.main_text_colour
cell.detail_text_label.text_color = self.thememanager.main_text_colour
return cell
elif row == self.adminRow:
cell = ui.TableViewCell()
cell.background_color=self.thememanager.main_background_colour
cell.selectable = False
editButton = ui.Button(title='Done' if tableview.editing else 'Edit')
editButton.width *= 1.4
editButton.action = swap_edit
editButton.y = cell.height/2 - editButton.height/2
editButton.x = cell.width
cell.add_subview(editButton)
self.titleButton.y = cell.height/2 - editButton.height/2
self.titleButton.x = self.titleButton.width/2
self.titleButton.action = self.change_title
cell.add_subview(self.titleButton)
return cell
elif row == self.typeRow:
cell = ui.TableViewCell('value1')
cell.background_color=self.thememanager.main_background_colour
cell.selectable = True
cell.text_label.text_color = self.thememanager.main_text_colour
cell.detail_text_label.text_color = self.thememanager.main_text_colour
cell.text_label.text = 'Type of Flow'
cell.detail_text_label.text = self.flowType
return cell
def tableview_cell_for_row(self, tv, section, row):
if section == self._folder_section:
item = self.items[row]
node = item['node']
else:
item = self._files[row]
node = None
cell = ui.TableViewCell()
cvb = cell.content_view.bounds
x = 15 + cvb.x + item['level'] * 15
if node and node.children_exists:
image_view = ui.ImageView()
image_view.frame = (x, 10, 24, 24)
image_view.image = ui.Image.named(
'iob:arrow_down_b_24' if node.path in self._expanded_node_paths else 'iob:arrow_right_b_24'
)
cell.content_view.add_subview(image_view)
x += 24 + 8
image_view = ui.ImageView()
image_view.frame = (x, 10, 24, 24)
image_view.image = ui.Image.named('iob:folder_24' if node else 'iob:document_24')
cell.content_view.add_subview(image_view)
x += 24 + 8
title_label = ui.Label(flex='W')
title_label.text = item['title']
title_label.size_to_fit()
title_label.frame = (
x, cvb.y + (cvb.height - title_label.height) / 2.0,
cvb.width - (x - cvb.x) - 8, title_label.height
)
cell.content_view.add_subview(title_label)
separator = ui.View(flex='W')
separator.background_color = (0, 0, 0, 0.05)
x = title_label.frame.x - 12 - 8
separator.frame = (
x, cvb.y + cvb.height - 1,
cvb.width - (x - cvb.x), 1
)
cell.content_view.add_subview(separator)
cell_objc = ObjCInstance(cell)
cell_objc.setSelectionStyle(0)
return cell