所以即时为Android创建一个短信用户界面。它处理消息线程的方式是,当我点击发送它发送消息,创建一个新的消息线程,然后将此消息添加到我的对话视图的相应实例。
ConverseView是一种只有onCreate(Bundle)方法的活动。此方法创建适配器并使用ArrayList中的值填充适配器。当用户点击发送时,数组列表会添加一条消息。但是这些不会出现在视图中。
我认为问题是,正在创建活动然后添加消息,并且ListView不会更新。我怎样才能解决这个问题。
答案 0 :(得分:1)
使用由ArrayAdapter adapter;
支持的ArrayList
。要在修改ArrayList后更新列表中的数据,只需调用adapter.notifyDataSetChanged()
。
答案 1 :(得分:0)
Look here了解有关生命周期的更多信息。
实际上,onStart(Bundle state)
是在Activity启动后调用的。这意味着活动是活跃的并且响应a)应用程序和b)到Android本身。
onResume(Bundle state)
表示活动即将显示在屏幕上。这是您应该完成任何UI操作的地方。
至于您的数据没有显示,您需要调用Adapter.notifyDataSetChanged()
来推送您的适配器重绘。没有此调用,您的适配器将不会(以图形方式)更新。