0

收到消息后,我将数据添加到列表视图。当监听器调用然后我添加消息但它没有显示在列表视图上。

请帮我解决这个问题。

/**
     * It display the chat messages.
     */
     private void displayResultList() {
         if(messageList != null && messageList.size() > 0) {
             adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, messageList) {
                    public View getView(int position, View convertView, ViewGroup parent) {
                        if (convertView == null) {
                            convertView = LayoutInflater.from(context).inflate(android.R.layout.simple_list_item_1, null);
                        }
                        ((TextView)convertView).setText(getItem(position));
                        ((TextView)convertView).setTextColor(Color.BLACK);
                        return convertView;
                    };
             };
            setListAdapter(adapter);
            getListView().setTextFilterEnabled(true);
         }
     }

     /**
      * This listener called when click on send button.
      */
     private OnClickListener sendListener = new OnClickListener() {
        @Override
        public void onClick(View v) {
            try {
                muc.sendMessage(chatMessage.getText().toString());
                messageDataSource.open();
                messageDataSource.createRoomMessage(roomName, chatMessage.getText().toString(), userId, null);
                messageDataSource.close();
                chatMessage.setText("");
            } catch(Exception e) {
                Log.v("HB", "Exception at::" + e.getMessage());
            }
        }
    };
4

1 回答 1

0

它解决了我的问题。我的问题是我在按钮的 onclick 侦听器中刷新了适配器列表视图。

runOnUiThread(new Runnable() {
    @Override
    public void run() {
        adapter.notifyDataSetChanged();
    }
});
于 2013-07-03T13:21:22.257 回答