记录一个找了好几个小时的bug ,最后在一个帖子上看到严大评论,并不是自己想到的,只是记录一下
ListView的每个item都有一个GridView,所以GridView的Adapter如果写成ListView的Adapter的成员变量,那么ListView的上一个Item的GridView的Adapter就会被下一个Item的GridView的Adapter覆盖掉,所以当点击GridView的Item的时候去调用adapter.notify...的时候实际是调用了ListView的最后一个Item的GridView的Adapter.notify,所以点击得时候adapter.notify实际是刷新了最后一个,所以看起来是无效的。
正确是方式应该是ListView的每个Item都要写成局部成员变量并且加final修饰,