/*** * 获取 ListView 中 当前界面 显示的item 的个数 * 以及 当前点击的Item 在当前显示的ItemL列表 中的位置 * *解决问题 parent.getChildAt(position);有时会报空指针 错误* */ public class MainActivity extends AppCompatActivity { private List<String > list=new ArrayList<>(); private ListView lv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lv = ((ListView) findViewById(R.id.listView)); for (int i = 0; i < 30; i++) { list.add("测试"+i); } ArrayAdapter arrayAdapter=new ArrayAdapter(this,R.layout.item,list); lv.setAdapter(arrayAdapter); lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // 获取 当前 显示的第一个Item 在数据中的位置 int firstVisiblePosition = parent.getFirstVisiblePosition(); // 获取当前显示item 的个数 int childCount = parent.getChildCount(); // 当前点击的Item 在当前显示的ItemL列表 中的位置int i = position - firstVisiblePosition +1;} }); } }
ListView 中Item 位置获取
最新推荐文章于 2022-08-11 18:04:11 发布