【问题标题】:sorting a ListView by number按数字排序 ListView
【发布时间】:2018-11-04 17:24:16
【问题描述】:

按浮点数排序 ListView Android ...

我有一个mysql数据库的listview价格类型浮动显示,,

我想对其进行排序(按顺序),但我还没有找到解决方案..

请问我该怎么做!!!

这是我的 listView 的代码,价格已完成!

    private class GetHttpResponse extends AsyncTask<Void, Void, Void>{ 
    public Context context;
    String ResultHolder;
    List<subjects> subjectsList;
    public GetHttpResponse(Context context)
    {
        this.context = context;
    }
    @Override
    protected void onPreExecute()
    {
        super.onPreExecute();
    }
    @Override
    protected Void doInBackground(Void... arg0)
    {
        HttpServicesClass httpServiceObject = new 
     HttpServicesClass(ServerURL);
        try
        {
            httpServiceObject.ExecutePostRequest();
         if(httpServiceObject.getResponseCode() == 200)
            {
                ResultHolder = httpServiceObject.getResponse();
         if(ResultHolder != null)
                {
                    JSONArray jsonArray = null;
                   try {
       jsonArray = new JSONArray(ResultHolder);
       JSONObject jsonObject;
       subjects subjects;
       subjectsList = new ArrayList<subjects>();
       for(int i=0; i<jsonArray.length(); i++)
       { subjects = new subjects();
       jsonObject = jsonArray.getJSONObject(i);
      subjects.SubjectName = jsonObject.getString("tarif");
      subjectsList.add(subjects);
                        }  }
        catch (JSONException e) {
         e.printStackTrace();
                    } } } else
            {
                Toast.makeText(context, httpServiceObject.getErrorMessage(), 
           Toast.LENGTH_SHORT).show();
            }
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        return null;
    }
    @Override
    protected void onPostExecute(Void result)
   { progressBarSubject.setVisibility(View.GONE);
       SubjectListView.setVisibility(View.VISIBLE);
       if(subjectsList != null)
        {
       ListAdapterClass adapter = new ListAdapterClass(subjectsList, 
        context);
       SubjectListView.setAdapter(adapter);
            SubjectListView.setOnItemClickListener(new 
        AdapterView.OnItemClickListener(){
        @Override
         public void onItemClick(AdapterView<?> parent, View view, 
        int pos, long id) {
                    String selectedItem = 
         parent.getItemAtPosition(pos).toString();
        Toast.makeText(TechnicienActivity.this,selectedItem,
      Toast.LENGTH_SHORT).show();
                    Intent intent = new 
      Intent(getApplicationContext(),Main2Activity.class);
      intent.putExtra("Position" , String.valueOf(id));
                    startActivity(intent);
                }   }); }  } }

【问题讨论】:

标签: android json


【解决方案1】:

您可以使用

对列表进行排序
Collections.sort(list);

然后将其设置为列表视图。 示例;

subjectsList.add(subjects);
Collections.sort(subjectsList);

【讨论】:

  • 喜欢这个? private void sortData(boolean asc) { //排序数组升序和降序 if (asc) Collections.sort(subjects);否则 { Collections.reverse(subjects); } SubjectListView.setAdapter(new ArrayAdapter(MainActivity.this,android.R.layout.simple_list_item_1,subjects)); }
猜你喜欢
  • 2012-06-17
  • 1970-01-01
  • 2016-08-15
  • 1970-01-01
  • 2018-03-26
  • 1970-01-01
  • 2013-11-09
  • 2016-08-25
相关资源
最近更新 更多