Skip to content

Instantly share code, notes, and snippets.

@beer2011
Last active August 29, 2015 14:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save beer2011/4664d51f66991e874066 to your computer and use it in GitHub Desktop.
Save beer2011/4664d51f66991e874066 to your computer and use it in GitHub Desktop.
# coding: utf-8
# For Pythonista app
# TableViewの階層化
# データ決め打ちの、簡単構造
import ui
import console
class TableView (ui.View):
def __init__(self):
self.tv = ui.TableView()
self.tv.frame = self.bounds
self.tv.flex = 'WH'
self.tableview = self.tv
self.add_subview(self.tableview)
self.name = 'TableView'
ds = ui.ListDataSource(list_1)
self.tv.delegate = self.tv.data_source = ds
ds.action = self.item_selected
def list_change(self, list):
ds = ui.ListDataSource(list)
self.tv.delegate = self.tv.data_source = ds
self.tv.reload_data()
ds.action = self.item_selected
@ui.in_background
def item_selected(self, sender):
item = sender.items[sender.selected_row]
print item
if item == '野菜 --->':
self.list_change(list_2_1)
elif item == '魚 --->':
self.list_change(list_2_2)
elif item == '<--- 戻る':
self.list_change(list_1)
### MAIN ###
list_1 = ['りんご', 'みかん', 'バナナ', '魚 --->', '野菜 --->']
list_2_1 = ['<--- 戻る', '人参', '茄子', 'キャベツ', '玉ねぎ']
list_2_2 = ['<--- 戻る', '鯛', 'アジ', 'サンマ', '鯖']
view = TableView()
view.present('sheet')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment