def do_quickfind(self, _, text):
Clock.unschedule(self._reset_quickfind_text)
text = self._quickfind_text + text
self._quickfind_text = text
result = self.find_index_by_text(self.quickfind_key, text, match=True)
index = None
selectable = False
data_text = ''
if result:
index = result[0]
selectable = True
data = self.data[index]
data_text = data[self.quickfind_key]
if 'selectable' in data and not data['selectable']:
selectable = False
if selectable:
self.scroll_to_index(index)
delayed = lambda dt: self.children[0].select_with_touch(index)
Clock.schedule_once(delayed, 0)
if not selectable:
self.children[0].deselect_all()
Logger.info(
('AppRecycleViewQuickFind: do_quickfind: '
'text="{}" index="{}" selectable="{}" data_text={}').format(
text, index, selectable, data_text))
Clock.schedule_once(
self._reset_quickfind_text, self.quickfind_reset_time)
评论列表
文章目录