private void setSortOrder(MenuItem mi, BlobDescriptorList.SortOrder order) {
   Drawable icon;
   int textRes;
   if (order == BlobDescriptorList.SortOrder.TIME) {
     icon = icClock;
     textRes = R.string.action_sort_by_time;
   } else {
     icon = icList;
     textRes = R.string.action_sort_by_title;
   }
   mi.setIcon(icon);
   mi.setTitle(textRes);
   SharedPreferences p = this.prefs();
   SharedPreferences.Editor editor = p.edit();
   editor.putString(PREF_SORT_ORDER, order.name());
   editor.commit();
 }
  @Override
  public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    BlobDescriptorList descriptorList = getDescriptorList();

    SharedPreferences p = this.prefs();

    String sortOrderStr = p.getString(PREF_SORT_ORDER, BlobDescriptorList.SortOrder.TIME.name());
    BlobDescriptorList.SortOrder sortOrder = BlobDescriptorList.SortOrder.valueOf(sortOrderStr);

    boolean sortDir = p.getBoolean(PREF_SORT_DIRECTION, false);

    descriptorList.setSort(sortOrder, sortDir);

    listAdapter = new BlobDescriptorListAdapter(descriptorList);

    final FragmentActivity activity = getActivity();

    icFilter = FontIconDrawable.inflate(activity, R.xml.ic_actionbar_filter);
    icClock = FontIconDrawable.inflate(activity, R.xml.ic_actionbar_clock);
    icList = FontIconDrawable.inflate(activity, R.xml.ic_actionbar_list);
    icArrowUp = FontIconDrawable.inflate(activity, R.xml.ic_actionbar_sort_asc);
    icArrowDown = FontIconDrawable.inflate(activity, R.xml.ic_actionbar_sort_desc);

    final ListView listView = getListView();
    listView.setOnItemClickListener(
        new OnItemClickListener() {
          @Override
          public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Intent intent = new Intent(activity, ArticleCollectionActivity.class);
            intent.setAction(getItemClickAction());
            intent.putExtra("position", position);
            startActivity(intent);
          }
        });

    setListAdapter(listAdapter);
  }