如何让baseadapter从0或1以外的其他位置开始

时间:2015-10-14 22:53:05

标签: java android-listview baseadapter getview

我有一个baseadapter,它总是从最顶端的位置0或1开始但是有一些我可以让我的Baseadapter从第5位开始?我一直在这里搜索并且没有找到关于它的信息,这是我的baseadapter,是的它连接到listview但是我知道listview开始的位置是由BaseAdapter控制的

public class myadapter extends BaseAdapter {

    Context context;
    LayoutInflater myiflater;
    public myadapter() {

        myiflater = (LayoutInflater) c.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }


    @Override
    public int getCount() {
  return 20;



    }

    @Override
    public Object getItem(int position) {
        return 5;
    }

    @Override
    public long getItemId(int position) {
        return 5;
    }

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

// all of this is already correct
        } 
catch (Exception e) {
            e.printStackTrace();
        }
        return convertView;
          }
        return convertView;
    }
}

正如你所看到的,我试图将起始位置设置为5,但它不起作用。

1 个答案:

答案 0 :(得分:1)

使用ListView执行此操作:

mListView.setSelection(5);

setSelection()通过适配器设置ListView的当前位置。你正在尝试的方式没有意义。对于getItem()方法,您应该返回对象,而不是位置的数值。如果有效,请告诉我