NoScrollListView 设置 Adapter 后 getView() 方法 view 会进行复用的问题
2017-07-28 11:32
501 查看
我们在开发过程中会出现在 scrollView 中嵌套 listview 的情况,一般情况下,我们将 listview 高度设置为根据自己 item 的高度总和来将 listview 滑动功能去掉,然后 scrollView 在滚动的时候,其实是在 scrollView 中的内容在滚动,这里面也包括 我们自定义的 不滚动的 listview。NoScrollListView 一般写法如下:
然后在 Adapter 的 getView() 方法打一个log
可以看到,在之前角标0 ,1一直是在复用同一个 view ,最后才创建了一个新的 view,具体什么原因,不清楚,先记录一下。
public class NoScrollListView extends ListView { public NoScrollListView(Context context) { super(context); } public NoScrollListView(Context context, AttributeSet as) { super(context, as); } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int expandSpec = MeasureSpec.makeMeasureSpec(Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST); super.onMeasure(widthMeasureSpec, expandSpec); } }
然后在 Adapter 的 getView() 方法打一个log
@Override public View getView(int i, View view, ViewGroup viewGroup) { Log.d("Adapter", "i:" + i); if (view == null) { view = LayoutInflater.from(mContext).inflate(R.layout.xxx, viewGroup, false); } Log.d("Adapter", "view:" + view); }
可以看到,在之前角标0 ,1一直是在复用同一个 view ,最后才创建了一个新的 view,具体什么原因,不清楚,先记录一下。
相关文章推荐
- Android项目:模仿ConvertView原理(ListView的getView方法)对View对象进行回收和复用 推荐
- 解决ListView的getView()方法中View设置监听position错乱的问题
- Android项目:模仿ConvertView原理(ListView的getView方法)对View对象进行回收和复用
- Android:ListView、SimpleAdapter、设置不同行布局、getViewTypeCount、getItemViewType
- Android中Adapter的getView方法复用view机制
- GridView,ListView 等adapter容器view设置setOnItemClickListener不响应的问题。
- RecycleView设置点击的两种方式:adapter中的onBindViewHolder(VH,int)方法中进行;实现RecyclerView的addonItemTouchListerner()
- 关于重写的listview adapter中,在getView()方法中,打印语句时,相同的position打印了多次,重复调用问题
- Android中Adapter的getView方法复用view机制
- 关于TP5视图分离到根目录的解决方法 原有: 为了方便前端开发,我想把视图(view)部分分离出来专门给前端进行修改 过程:在进行视图设置分离的过程遇到了问题 参考了官方文档http://www
- android listView 重写Adapter方法getView的性能优化问题
- 关于listview的baseadapter的convertView复用问题
- Android:Adapter中设置多种type的item的LayoutParams导致的convertView复用异常的问题
- Android自定义ListView或GridView适配器Adapter的getView方法不执行的问题
- 关于ListView的BaseAdapter中getView方法问题
- ListView Adapter里的getView()方法重复调用问题
- 对listview adapter的getview方法的新认识viewholder
- ListView和GridView 自定义Adapter的getView()方法调用问题
- listview中设置textView使用方法etonitemclicklistener 无效的问题
- ListView 在getView()中设置一个item中的TextView的动态显示出现其它的也显示的bug解决方法