分析方法开发Android开发之BaseAdapter方法详细分析

Android开发之BaseAdapter方法详细分析,BaeAdater是使用得比较多的一个LitView、GridView、Sier、RecyclerView等控件适配器,通过重写getView方法,展示自定义视图。BaeAdater继承Oject,实现接口LitAdater、SierAdater,必须掌握BaeAdater的四个抽象方法:ge...
BaseAdapter是使用得比较多的一个ListView、GridView、Spinner、RecyclerView等控件适配器,通过重写getView方法,展示自定义视图。BaseAdapter继承Object,实现接口ListAdapter、SpinnerAdapter,必须掌握BaseAdater的四个抽象方法:getItem(int),getItemId(int),getCount(),getView(int,View,ViewGroup)步骤阅读工具/原料Android开发工具:AndroidStudio或EclipseAndroid测试工具:虚拟设备或手机一、熟悉BaseAdapter简单使用1给ListView设置BaseAdapter,绑定列表数据。在钊林IT其中的一篇文章里详细介绍过接口实现的三种方式,这里以“匿名类实现法”为例。在布局文件中使用ListView控件,然后在Activity类文件中获取ListView控件,最后使用BaseAdapter绑定数据步骤阅读步骤阅读2运行项目的效果,在ListView列表中展示四条数据内容。在上面BaseAdapter简单使用的基础上添加四个常用的方法:步骤阅读3BaseAdapter常用的四个方法:notifyDataSetChanged(),提醒依附的监视器底层的数据已发生改变,每一个item视图都应该刷新本身;notifyDataSetInvalidated(),提醒依附的监视器底层的数据不再是有效的或可获得的;步骤阅读END二、深入理解BaseAdapter1getItemViewType(int),获得在getView(int,View,ViewGroup)创建的指定item的视图类型,根据返回值,在getView()方法中初始化多种布局;getViewTypeCount(),返回在getView()方法初始化布局视图的数量步骤阅读2ListView滑动到底部时,感觉怎么滑都还有数据,每次滑动底部都会添加新的内容同时刷新ListView,感觉就像一个无穷无尽的新闻列表;当我们的数据没有新添加时,调用notifyDataSetInvalidate方法,在做新闻列表时,在多个Fragment来回切换时,新闻列表中的数据未发生改变,这时候如果还调用notifyDataSetChanged方法,会出现一片空白,解决的办法调用notifyDataSetInvalidate方法或者将mAdapter赋值为null步骤阅读3getViewTypeCount()方法设置items视图需要初始化布局的总数,getItemViewType(int)返回指定位置的item视图步骤阅读步骤阅读步骤阅读4其他BaseAdapter方法:areAllItemsEnabled(),标识在当前适配器中所有的items是否可用;getDropDownView(int,View,ViewGroup),获取指定位置显示下拉列表数据的item视图;hasStableIds(),标识是否itemid是稳定的;isEmpty(),是否为空5isEnabled(),返回false,表示指定位置的item是独立,一个独立的item不允许选中和点击;registerDataSetObserver(DataSetObserver),当数据改变时,被适配器回调该注册的监视器;unregisterDataSetObserver(DataSetObserver),调用当方法解除已注册的监视器END注意事项BaseAdapter必须重写其中的四个抽象方法,其他方法根据需要重写防止ListView或GridView加载数据卡顿,推荐使用ViewHolder优化

本文来自投稿,不代表长河网立场,转载请注明出处: http://www.changhe99.com/a/gjrXMGnwnN.html

(0)

相关推荐