首页 > 技术文章 > ListView相关知识点

bhm666 2017-02-21 09:02 原文

   最近开发接触到了ListView控件,其实简单的需求基本上源生的都可以满足,下面总结一下开发过程中所遇到的关键点:

1.多级ListView联动,保存位置:即切换第一层ListView的item过程中,第二层已被选中的item(目前是一个),切换回来后

   能现在滚动到原来的位置和item选中状态:

   ①在切换第一层ListView的item时,第二层的ListView根据第一层ListView的item适配相应的数据源;

     

     

 

   ②我是利用HashMap<String, String>,在点击第二层的ListView的时候,将第一层ListView选中的item的position作为key,

      第二层ListView选中的item的position作为value,存储。

      

   ③在适配第二层ListView时,拿到第一层ListView被选中的Item的position,在HashMap<String, String>中取到对应的

      第二层ListView的item的位置;

   ④在更新第二层数据时,先适配数据源setAdapter,再滚动到相应位置setSelection,再刷新数据notifyDataSetChanged

    (位置调换会有问题)

 

 

   小弟是Android菜鸟,控件开发稍许对性能要求并不是特别注重,望大神勿喷。

推荐阅读