1

SlideMenuでこのタイプのリストビューをエミュレートしたいと思います。SlideMenuは正常に機能しています。これはListFragmentです。AndroidのYouTubeアプリのように、このパターンをコピーしたいと思います。

ここに画像の説明を入力してください

基本的に、カテゴリのリストの一番上に追加する必要のあるリスト項目がいくつかあります。そして、ヘッダーを分離したい。

これ欲しい:

Home
Profile
Top Items

Header that says Categories
And List of Categories

私はすでにカテゴリをうまくリストアップしていSlideMenuます。それらはadapter、のテーブルから入力されたから来ていますMySQL。ただし、上位3つの項目は、同じテーブル(または任意のテーブル)からのものではありません。上部は?へのヘッダーListViewですか?それはそれ自身ListViewですか?また..?

覚えておいてください、私はリストをソートする機能が欲しいです(私はすでに持っていますspinner)。したがって、カテゴリは動的である必要があります。しかし、上記の静的アイテムをいくつか追加してヘッダーを作成するにはどうすればよいですか?

コードサンプルは本当に必要ありません。これを実装する方法を知りたいだけです。

編集:これが進行中のコードです これはYoutubeの例のチャンネルラインのようなセパレーターを示しています。また、これらの2つまたは3つの静的ラインを上に追加する方法を理解する必要があります。

@Override
    public View getView(int position, View convertView, ViewGroup parent) {

        ViewHolder holder;
        holder = new ViewHolder();

        View rowView = convertView;
        LayoutInflater inflater = ((Activity) context).getLayoutInflater();
        int type = getItemViewType(position);

        if (rowView == null) {

            switch (type) {
            case TYPE_ITEM:
                rowView = inflater.inflate(R.layout.mastercat_layout, null,
                        true);
                holder.textView = (TextView) rowView.findViewById(R.id.label);
                holder.textView.setTypeface(tf);
                holder.imageView = (ImageView) rowView.findViewById(R.id.icon);

                break;
            case TYPE_SEPARATOR:
                rowView = inflater.inflate(R.layout.mastercat_layout_separate, null);

                break;
            }

            rowView.setTag(holder);

        } else {

            holder = (ViewHolder) rowView.getTag();
        }

        holder.textView.setText(getItem(position));
        holder.imageView.setImageResource(R.drawable.ic_launcher);

        return rowView;

    }
4

1 に答える 1

3

アダプターにconvertViewのプールがいくつか必要なのかもしれません。BaseAdapterにはメソッドが含まれています

public int getItemViewType (int position)

public int getViewTypeCount ()

これをオーバーライドして、2つのビュープールを実装できます。1つはヘッダー用、もう1つはlistViewのアイテム用です。また、この場合、getItemViewType()によって返されるitemViewTypeに従ってgetViewメソッドを変更する必要があります。

于 2013-02-27T17:47:51.983 に答える