我建立了一个聊天应用程序与kivy和有一个可选择的可回收利用的用户朋友布局(工程良好)。每次用户从列表中选择一个朋友时,我都会尝试切换聊天,我也会使用消息的循环视图。现在我没有使用数据模型或适配器(我对kivy是新手)。这是好友列表的一部分:
class SelectableLabel(RecycleDataViewBehavior, Label):
def apply_selection(self, rv, index, is_selected):
''' Respond to the selection of items in the view. '''
self.selected = is_selected
global dest,chats,convos, selection
if is_selected:
dest = [value for value in rv.data[index].values()]
print(dest)
selection = True
问题是每次我切换聊天标签时,标签都会出现问题,而且彼此之间的空间很大。我将聊天保存在字典列表中,每次切换聊天时,我都可以切换到切换到的客户端索引中的聊天(因为RV数据是字典列表)。请看照片:
这是在切换聊天之前
这是在切换到诺姆之后,然后又回到罗恩
if selection and dest != "":
if dest[0] in convos:
i = convos.index(dest[0])
else:
convos.append(dest[0])
chats.append([])
i = convos.index(dest[0])
self.ids.messages.data = chats[i]
selection = False
print("changed selection")
my_client.new_messages = []
上面的代码在一个线程中,所以我正在检查是否有选择,如果有,我切换数据。请帮助我解决这个问题,当我附加到数据时,它是正常的,但当我重新定义它时,它会出现小故障
目前没有回答
相关问题 更多 >
编程相关推荐