0

製造品目を表示するためにリスト フラグメントとリスト ビューを使用しました。そのために、アイテムをリストするための製造アダプターを作成しました。これにより、100を超えるアイテムがリストされます。今私の要件は、リストの一番上に最も頻繁に選択されたアイテム (3 つ以上のアイテム) を表示することです。

 getListView().setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            ManufacturerListAdapter adapter = (ManufacturerListAdapter) getListAdapter();
            Cursor cursor = (Cursor) adapter.getItem(position);

            String manufacturerId = cursor.getString(cursor.getColumnIndex(ManufacturersColumns.MANUFACTURER_ID));
            int    isUserCreated  = cursor.getInt(cursor.getColumnIndex("usergen"));

            EditableItemActivity activity = (EditableItemActivity) getActivity();
            if (activity != null) activity.setManufacturer(manufacturerId, isUserCreated > 0);
            hideKeyboard();
        }

    });

リストされたアイテムのクリックイベントのスニペットを追加しました。私の要件を理解するのに役立つことを願っています。

どんな助けでも大歓迎です!!!

4

1 に答える 1

0

ManufacturerListAdapter最初の数行の位置 (例: 、 、および ) の「最も頻繁に選択される項目」を返す必要があります。0その他1の項目2は任意の順序で返します。

ManufacturerListAdapterのサブクラスのように見えるため、CursorAdapter1 つのアプローチは次のとおりです。

  • 1 つのクエリを実行して、「最も頻繁に選択される項目」を 1 つにまとめますCursor
  • 別のクエリを実行して、残りを目的の順序で別のクエリに取得しますCursor
  • を使用して 2 つのCursorオブジェクトをつなぎ合わせます。MergeCursor
  • MergeCursor_ManufacturerListAdapter
于 2013-09-23T11:30:59.000 に答える