时间:2021-05-21
本文实例为大家分享了StickyListHeaders电话本列表效果的具体代码,供大家参考,具体内容如下
效果展示
布局文件
与listview使用方式一样,可以在布局文件中直接进行使用
核心代码
oncreat方法
在oncreat方法中初始化控件,并为控件设置数据适配器
StickyListHeadersListView stickyList = (StickyListHeadersListView) findViewById(R.id.list);MyAdapter adapter = new MyAdapter(this);stickyList.setAdapter(adapter);设置数据适配器
在设置数据适配器的时候,需要先继承BaseAdapter,然后实现StickyListHeadersAdapter接口,最后实现里面为实现的方法
public class MyAdapter extends BaseAdapter implements StickyListHeadersAdapter {private String[] countries;private LayoutInflater inflater;public MyAdapter(Context context) { inflater = LayoutInflater.from(context); countries = context.getResources().getStringArray(R.array.countries);}@Overridepublic int getCount() { return countries.length;}@Overridepublic Object getItem(int position) { return countries[position];}@Overridepublic long getItemId(int position) { return position;}@Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView == null) { holder = new ViewHolder(); convertView = inflater.inflate(R.layout.test_list_item_layout, parent, false); holder.text = (TextView) convertView.findViewById(R.id.text); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } holder.text.setText(countries[position]); return convertView;}@Override public View getHeaderView(int position, View convertView, ViewGroup parent) { HeaderViewHolder holder; if (convertView == null) { holder = new HeaderViewHolder(); convertView = inflater.inflate(R.layout.header, parent, false); holder.text = (TextView) convertView.findViewById(R.id.text); convertView.setTag(holder); } else { holder = (HeaderViewHolder) convertView.getTag(); } //set header text as first char in name String headerText = + countries[position].subSequence(0, 1).charAt(0); holder.text.setText(headerText); return convertView;}@Overridepublic long getHeaderId(int position) { //return the first character of the country as ID because this is what headers are based upon return countries[position].subSequence(0, 1).charAt(0);}class HeaderViewHolder { TextView text;}class ViewHolder { TextView text;}}以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
很多人导入电话本会出现这个问题,那么怎么解决呢?电话本格式基本为vcf,首先用记事本打开电话本,格式如下:--------------分割线----------
儿童电话手表滑动手表屏幕,滑到电话本,选中号码,触摸号码即可拨号出去。长按电源键可以轮流拨打3个sos号码;滑动手表屏幕,滑到电话本,选中号码,触摸号码即可拨号
今天小编给大家介绍电话本相关功能,如何将SIM卡中的联系人导出。OPPO手机怎么从SIM卡导出联系人?通过桌面的设置--进入电话本。选择SIM卡联系人&mdas
Android的应用被限制为最多占用16m的内存,至少在T-MobileG1上是这样的(当然现在已经有几百兆的内存可以用了——译者注)。它包括电话本身占用的和开
复制电话号码到新手机上的方法是: 1、打开旧手机的“设置”; 2、选择设置中的电话本; 3、选择下一级中的“导入导出联系人”; 4、选择导出到SIM;