title: ExpandableListView in a Fragment not working
body: <p>I'm hoping you guys can help.  I tried using <a href="https://stackoverflow.com/questions/24083886/expandablelistview-in-fragment-issue/24159659#24159659">ExpandableListView in Fragment Issue</a> to create my own sliding with expandablelistview and have been unsuccessful.  I'm new to Java and Android and trying to figure it out.  Thanks in advance.</p>
  
  <p>LineupFragment.java</p>
  
  <pre><code>package com.example.expandabletest;
  
  import android.os.Bundle;
  import android.support.v4.app.Fragment;
  import android.view.LayoutInflater;
  import android.view.View;
  import android.view.ViewGroup;
  import android.widget.BaseExpandableListAdapter;
  import android.widget.ExpandableListView;
  import android.widget.ImageView;
  import android.widget.TextView;
  
  public class LineupFragment extends Fragment {
  
      View rootView;
      ExpandableListView lv;
      private String[] groups;
      private String[][] children;
  
      public LineupFragment() {
  
      }
  
      @Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
  
          groups = new String[] { "A318", "A319", "A320", "A321" };
  
          children = new String[][] {
                  { "Seating Chart" },
                  { "Seating Chart" },
                  { "Seating Chart" },
                  { "Seating Chart" }
          };
      }
  
      @Override
      public View onCreateView(LayoutInflater inflater,
              ViewGroup container, Bundle savedInstanceState) {
          rootView = inflater.inflate(R.layout.activity_main,  container, false);
          return rootView;
      }
  
      @Override
      public void onViewCreated(View view, Bundle savedInstanceState) {
          super.onViewCreated(view, savedInstanceState);
  
          lv = (ExpandableListView) view.findViewById(R.id.expListView);
          lv.setAdapter(new ExpandableListAdapter(groups, children));
          lv.setGroupIndicator(null);
      }
  
      public class ExpandableListAdapter extends BaseExpandableListAdapter {
  
          private final LayoutInflater inf;
          private String[] groups;
          private String[][] children;
  
          public ExpandableListAdapter(String[] groups, String[][] children) {
              this.groups = groups;
              this.children = children;
  
              inf = LayoutInflater.from(getActivity());
          }
  
          @Override
          public int getGroupCount() {
              return groups.length;
          }
  
          @Override
          public int getChildrenCount(int groupPosition) {
              return children[groupPosition].length;
          }
  
          @Override
          public Object getGroup(int groupPosition) {
              return groups[groupPosition];
          }
  
          @Override
          public Object getChild(int groupPosition, int childPosition) {
              return children[groupPosition][childPosition];
          }
  
          @Override
          public long getGroupId(int groupPosition) {
              return groupPosition;
          }
  
          @Override
          public long getChildId(int groupPosition, int childPosition) {
              return childPosition;
          }
  
          @Override
          public boolean hasStableIds() {
              return true;
          }
  
          @Override
          public View getChildView(int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {
               ViewHolder holder;
                  if (convertView == null) {
                      convertView = inf.inflate(R.layout.list_item, parent, false);
                      holder = new ViewHolder();
  
                      holder.text = (TextView) convertView.findViewById(R.id.lblListItem);
                      convertView.setTag(holder);
                  } else {
                      holder = (ViewHolder) convertView.getTag();
                  }
  
  
                  holder.text.setText(getChild(groupPosition, childPosition).toString());
  
                  return convertView;
          }
  
          @Override
          public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
              ViewHolder holder;
  
              if (convertView == null) {
                  convertView = inf.inflate(R.layout.list_group, parent, false);
  
                  holder = new ViewHolder();
                  holder.text = (TextView) convertView.findViewById(R.id.lblListHeader);
                  convertView.setTag(holder);
              } else {
                  holder = (ViewHolder) convertView.getTag();
              }
  
              holder.text.setText(getGroup(groupPosition).toString());
  
              ImageView Photo = (ImageView) convertView.findViewById(R.id.photo);
  
  
              //Images for all artists need to be hardcoded below
  
              if (groupPosition == 0) {
                  Photo.setBackgroundResource(R.drawable.ic_launcher);
              }
              else if (groupPosition == 1) {
                  Photo.setBackgroundResource(R.drawable.ic_launcher);
              }
  
              return convertView;
          }
  
          @Override
          public boolean isChildSelectable(int groupPosition, int childPosition) {
              return true;
          }
  
          private class ViewHolder {
              TextView text;
  
          }
  
      }
  }
  </code></pre>
  
  <p>ExpandableListAdapter.java</p>
  
  <pre><code>package com.example.expandabletest;
  
  import java.util.HashMap;
  import java.util.List;
  
  import android.app.Activity;
  import android.content.Context;
  import android.graphics.Typeface;
  import android.view.LayoutInflater;
  import android.view.View;
  import android.view.ViewGroup;
  import android.widget.BaseExpandableListAdapter;
  import android.widget.TextView;
  
  public class ExpandableListAdapter extends BaseExpandableListAdapter {
  
      private Activity _context;
      private List&lt;String&gt; _listDataHeader;  // header titles
      private HashMap&lt;String, List&lt;String&gt;&gt; _listDataChild; // child data in format of header title, child title
  
      public ExpandableListAdapter(Activity context, List&lt;String&gt; listDataHeader, HashMap&lt;String, List&lt;String&gt;&gt; listChildData) {
          this._context = context;
          this._listDataHeader = listDataHeader;
          this._listDataChild = listChildData;
      }
  
      @Override
      public Object getChild(int groupPosition, int childPosition) {
          return this._listDataChild.get(this._listDataHeader.get(groupPosition)).get(childPosition);
      }
  
      @Override
      public long getChildId(int groupPosition, int childPosition) {
          return childPosition;
      }
  
      @Override
      public View getChildView(int groupPosition, final int childPosition, boolean isLastChild, View convertView,
              ViewGroup parent) {
  
          final String childText = (String) getChild(groupPosition, childPosition);
  
          if (convertView == null) {
              LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
              convertView = infalInflater.inflate(R.layout.list_item,  null);
          }
  
          TextView txtListChild = (TextView) convertView.findViewById(R.id.lblListItem);
  
          txtListChild.setText(childText);
          return convertView;
      }
  
      @Override
      public int getChildrenCount(int groupPosition) {
          return this._listDataChild.get(this._listDataHeader.get(groupPosition)).size();
      }
  
      @Override
      public Object getGroup(int groupPosition) {
          return this._listDataHeader.get(groupPosition);
      }
  
      @Override
      public int getGroupCount() {
          return this._listDataHeader.size();
      }
  
      @Override
      public long getGroupId(int groupPosition) {
          return groupPosition;
      }
  
      @Override
      public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
          String headerTitle = (String) getGroup(groupPosition);
          if (convertView == null) {
              LayoutInflater infalInflater = (LayoutInflater) this._context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
              convertView = infalInflater.inflate(R.layout.list_group,  null);
          }
  
          TextView lblListHeader = (TextView) convertView.findViewById(R.id.lblListHeader);
          lblListHeader.setTypeface(null, Typeface.BOLD);
          lblListHeader.setText(headerTitle);
  
          return convertView;
      }
  
      @Override
      public boolean hasStableIds() {
          return false;
      }
  
      @Override
      public boolean isChildSelectable(int groupPosition, int childPosition) {
          return true;
      }
  
  }
  </code></pre>
  
  <p>MainActivity.java</p>
  
  <pre><code>package com.example.expandabletest;
  
  import android.os.Bundle;
  import android.support.v4.app.FragmentActivity;
  
  public class MainActivity extends FragmentActivity {
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
      }
  }
  </code></pre>
  
  <p>activity_main.xml</p>
  
  <pre><code>&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:id="@+id/LinearLayout2"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:background="#000000"
      android:orientation="vertical" &gt;
  
      &lt;ExpandableListView
          android:id="@+id/expListView"
          android:layout_width="match_parent"
          android:layout_height="310dp"
          android:layout_weight="0.14" &gt;
      &lt;/ExpandableListView&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>list_group.xml</p>
  
  <pre><code> &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:tools="http://schemas.android.com/tools"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:background="#000000"
      android:orientation="horizontal" &gt;
  
      &lt;LinearLayout
          android:layout_width="52dp"
          android:layout_height="52dp"
          android:orientation="vertical" &gt;
  
          &lt;ImageView
              android:id="@+id/photo"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:contentDescription="@string/app_name"
              android:fitsSystemWindows="true" /&gt;
      &lt;/LinearLayout&gt;
  
      &lt;LinearLayout
          android:layout_width="match_parent"
          android:layout_height="52dp"
          android:orientation="vertical" &gt;
  
          &lt;TextView
              android:id="@+id/lblListHeader"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:gravity="center_vertical"
              android:paddingLeft="6dip"
              android:paddingTop="6dip"
              android:textColor="#CC0000"
              android:textSize="20dp"
              android:textStyle="bold"
              tools:ignore="SpUsage" /&gt;
      &lt;/LinearLayout&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>list_item.xml</p>
  
  <pre><code>&lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:layout_height="120dp"
      android:orientation="vertical" &gt;
  
      &lt;TextView
          android:id="@+id/lblListItem"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:paddingBottom="5dp"
          android:paddingLeft="?android:attr/expandableListPreferredChildPaddingLeft"
          android:paddingTop="5dp"
          android:textColor="#ffffff"
          android:textSize="13sp" /&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>