我有一个baseadapter,它总是从最顶部的0或1位置开始,但是有某种方式可以使我的Baseadapter从5位置开始吗?我一直在这里搜索,但没有找到有关的信息,这是我的baseadapter,是的,它已连接到列表视图,但是我知道列表视图开始的位置是由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,但无法正常工作。
使用您的ListView执行此操作:
mListView.setSelection(5);
setSelection()通过适配器设置ListView的当前位置。您尝试的方式没有意义。对于getItem()方法,应该返回对象,而不是位置的数值。让我知道是否可行
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句