Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Listview with sections

Hi I am having an issue trying to understand how sectioned ListViews work. I had it working into a normal list view. but now I want to add sections to my list. How to I ad a section header in.

Heres my code that works.

public class ChooseTeamActivity extends ListActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

    setContentView(R.layout.chooseact);    

    String FullData = getIntent().getStringExtra("FullData");

    try{

      JSONObject obj = new JSONObject(FullData);
      List<String> leagues = new ArrayList<String>();

      JSONObject objData = obj.getJSONObject("data");

      JSONArray jArray = objData.getJSONArray("structure");


      for (int i=0; i < jArray.length(); i++) {
        JSONObject oneObject = jArray.getJSONObject(i);   
        leagues.add(oneObject.getString("league_website_name"));
        JSONArray DivisionsArray = oneObject.getJSONArray("divisions");

        for (int d=0; d < DivisionsArray.length(); d++){            
           JSONObject DivDict = DivisionsArray.getJSONObject(d);   
           leagues.add(DivDict.getString("name"));              
        }               
     }         

      setListAdapter ( new ArrayAdapter<String>(this, R.layout.single_item, 
                                                                    leagues));

      ListView list = getListView();
      list.setTextFilterEnabled(true);

    } catch (JSONException e) {
        e.printStackTrace();
    }     
    }
}
like image 801
iamlukeyb Avatar asked Apr 25 '12 15:04

iamlukeyb


2 Answers

A quick google of "android sectioned listview" will return results for example http://w2davids.wordpress.com/android-sectioned-headers-in-listviews/

In fast summary though you end up writing a list adapter that returns a header layout when needed, and a row layout when needed.

like image 135
huntsfromshadow Avatar answered Nov 06 '22 05:11

huntsfromshadow


The correct answer is that section are not supported at all. You have to fake them.

like image 24
dwery Avatar answered Nov 06 '22 05:11

dwery