title: Expandable List Adapter is not refreshing at all
body: <p>I am using one expandable list and it shows the presence of the users in the chatting ( at run time) whenever there is a change in the presence of the user, i am sending a broadcast to refresh the adapter but it is not refreshing at all.</p>
  
  <p>here is the code</p>
  
  <p>to set the adapter</p>
  
  <pre><code>/** Set Adapter here */
          adapter = new UserMenuAdapter(this, groupNames, childs);
          setListAdapter(adapter);
          object = this;
  </code></pre>
  
  <p>I call this receiver from a service using sendbroadcast method, and I have already checked that its onReceive but the list is not refreshing.</p>
  
  <pre><code>BroadcastReceiver UpdateList = new BroadcastReceiver() {
          @Override
          public void onReceive(Context context, Intent intent) {
  
              groupChileItem();
              adapter.notifyDataSetChanged();
  
          }
      };
  </code></pre>
  
  <p>//groupChileitem ( method )</p>
  
  <pre><code>private void groupChileItem(){
          /***###############GROUP ARRAY ############################*/
          final ArrayList&lt;String&gt; groupNames = new ArrayList&lt;String&gt;();
  
          if(XMPPConn.mfriendRequestList.size() &gt; 0){
              groupNames.add("Request ("+XMPPConn.mfriendRequestList.size()+")"); 
          }else{
              groupNames.add("Request (0)");
          }
          chatUser = dbHelper.getChatUser();
          groupNames.add("Chats ("+chatUser.size()+")");  
          groupNames.add("Contacts (" + XMPPConn.mfriendList.size() + ")");
          groupNames.add("CGM Groups (" + XMPPConn.mGroupList.size() + ")");
          if(XMPPConn.mfriendPendingList.size() &gt; 0){
              groupNames.add("Pending ("+XMPPConn.mfriendPendingList.size()+")");
          }else{
              groupNames.add("Pending (0)");
          }
  
          mXMPPConn.getGroup();
          categoryList = dbHelper.getAllCategory();
          /**Group From Sever*/
          if (XMPPConn.mGroupList.size() &gt; 0) {
              for (int g = 0; g &lt; XMPPConn.mGroupList.size(); g++) {
                  mXMPPConn.getGroupContact(XMPPConn.mGroupList.get(g).groupName);
                  groupNames.add(XMPPConn.mGroupList.get(g).groupName + "("
                          + XMPPConn.mGroupContactList.size()+ ")");
              }
          } 
          this.groupNames = groupNames;
  
          /*** ###########CHILD ARRAY * #################*/
          ArrayList&lt;ArrayList&lt;ChildItems&gt;&gt; childs = new ArrayList&lt;ArrayList&lt;ChildItems&gt;&gt;();
          ArrayList&lt;ChildItems&gt; child = new ArrayList&lt;ChildItems&gt;();
          /**child for request frieds*/
          if(XMPPConn.mfriendRequestList.size() &gt; 0){
              for(int i = 0; i &lt; XMPPConn.mfriendRequestList.size(); i++){
                  child.add(new ChildItems(XMPPConn.mfriendRequestList.get(i).friendNickName,
                          "Waiting for Authorization",0,null));
              }
          }else{
              child.add(new ChildItems("No Request list","",0,null));
          }   
          childs.add(child);
          /**Child for chat */
          child = new ArrayList&lt;ChildItems&gt;();
          if(chatUser.size() &gt; 0){
              for(int i = 0; i &lt; chatUser.size(); i++){
                  child.add(new ChildItems(userName(chatUser.get(i)), "",0,null));
              }
          }else{
              child.add(new ChildItems("--No History--", "",0,null));
          }       
          childs.add(child);
          /**Child for contact list*/
          child = new ArrayList&lt;ChildItems&gt;();
          child.add(new ChildItems("", "",0,null));
          if (XMPPConn.mfriendList.size() &gt; 0) {
              for (int n = 0; n &lt; XMPPConn.mfriendList.size(); n++) {
                  child.add(new ChildItems(XMPPConn.mfriendList.get(n).friendNickName,
                          XMPPConn.mfriendList.get(n).friendStatus, 
                          XMPPConn.mfriendList.get(n).friendState,
                          XMPPConn.mfriendList.get(n).friendPic));
              }
          }
          childs.add(child);
          /************** CGM Group Child here *********************/
          child = new ArrayList&lt;ChildItems&gt;();
          child.add(new ChildItems("", "",0,null));
  
          if (XMPPConn.mGroupList.size() &gt; 0) {
              for (int grop = 0; grop &lt; XMPPConn.mGroupList.size(); grop++) {
                  child.add(new ChildItems(
                          XMPPConn.mGroupList.get(grop).groupName + " ("
                          + XMPPConn.mGroupList.get(grop).groupUserCount
                          + ")", "",0,null));
              }
          }
          childs.add(child);
  
          /**Pending friend*/
          child = new ArrayList&lt;ChildItems&gt;();
          if(XMPPConn.mfriendPendingList.size()&gt; 0){
              for(int i = 0; i &lt; XMPPConn.mfriendPendingList.size(); i++){
                  child.add(new ChildItems(XMPPConn.mfriendPendingList.get(i).friendNickName,
                          "Waiting for Authorization",0,null));
              }
          }else{
              child.add(new ChildItems("No Pending list","",0,null));
          }
          childs.add(child);
          /************************ Group Contact List *************************/
          if (XMPPConn.mGroupList.size() &gt; 0) {
              for (int g = 0; g &lt; XMPPConn.mGroupList.size(); g++) {
                  /** Contact List */
                  mXMPPConn.getGroupContact(XMPPConn.mGroupList.get(g).groupName);
                  child = new ArrayList&lt;ChildItems&gt;();
                  for (int con = 0; con &lt; XMPPConn.mGroupContactList.size(); con++) {
                      child.add(new ChildItems(
                              XMPPConn.mGroupContactList.get(con).friendNickName,
                              XMPPConn.mGroupContactList.get(con).friendStatus,0,null));
                  }
                  childs.add(child);
              }
          }
          this.childs = childs;
  
      }
  </code></pre>
  
  <p>Anybody please tell me what I am doing wrong?</p>