【问题标题】:Android List Adapter Sort by dateAndroid List Adapter 按日期排序
【发布时间】:2013-12-03 15:49:02
【问题描述】:

我有一个程序可以从数据库中检索数据并将其显示在列表适配器中,但我想按计划日期按升序对数据进行排序。谁能帮忙

ArrayList<HashMap<String, String>> TimesheetList =  controller.getAllworkinstructions();


if(TimesheetList.size()!=0) {

    ListView lv = getListView();
    lv.setOnItemClickListener(new OnItemClickListener() {

        @Override 
        public void onItemClick(AdapterView<?> parent, View view,int position, long id) {


        Id = (TextView) view.findViewById(R.id.Id);
        String valId = Id.getText().toString();                   
        Intent  objIndent = new Intent(getApplicationContext(),ViewCuttingtask.class);
        objIndent.putExtra("Id", valId); 
        startActivity(objIndent); 

        }

    }); 


    SimpleAdapter adapter = new SimpleAdapter(Menu.this,TimesheetList, R.layout.list, 
        new String[] { "Id","weekcomm","jobid","taskid","planneddate","name","Priority"},    
        new int{R.id.Id,R.id.weekcomm,R.id.jobid,R.id.taskid,R.id.planneddate,R.id.name,R.id.priority}); 

    setListAdapter(adapter);

}

【问题讨论】:

    标签: android listview android-listview listadapter


    【解决方案1】:

    这与适配器无关。

    您应该根据需要对集合进行排序,然后将其传递给适配器(例如,如果您已经将其传递给 ListView,则通知它)。

    按排序,我的意思是:

    • 数据库查询时间排序
    • 使用 Collection.sort(yourCollection, aComparator)

    【讨论】:

      【解决方案2】:

      我假设这些字符串之一是指日期 ArrayList&lt;HashMap&lt;String, String&gt;&gt; TimesheetList 只需按日期对 TimesheetList 进行排序并将排序列表提供给数组适配器

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-18
        • 2011-02-19
        • 2017-09-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多