【发布时间】:2014-05-21 18:02:40
【问题描述】:
我被服务的棘手问题所困扰,真的需要一些帮助。这里我有一个监听聊天消息并将其发送到 ListAdapter 的方法:
@Override
public void processPacket(Packet packet) {
Handler mHandler = new Handler();
Message message = (Message) packet;
if (message.getBody() != null) {
String fromName = StringUtils.parseBareAddress(message.getFrom());
Log.i("XMPPChatDemoActivity ", " Text Recieved " + message.getBody() + " from " + fromName);
messages.add(fromName + ":");
messages.add(message.getBody());
// Add the incoming message to the list view
mHandler.post(new Runnable() {
public void run() {
setListAdapter();
这是我的 Listadapter:
public static void setListAdapter() {
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.listitem, messages);
listview.setAdapter(adapter);
}
我需要聊天消息检索代码在永久服务中,并将消息发送到主活动,因为服务无法与 UI 交互。我知道处理程序可以胜任这项工作,但我越尝试,就越感到困惑。
【问题讨论】: