微信 通讯录 好友列表显示
来源:互联网 发布:淘宝上买药提交需求 编辑:程序博客网 时间:2024/05/02 00:09
这个微信的通讯录展示没有米聊的通讯录做的好,米聊的展示效果和QQ好友的展示效果是一样的,都是重写ExpandableListView
这个没有重写控件,就是对数据的处理
MainActivity.java
package com.xzq.listviewadapter;import android.app.Activity;import android.os.Bundle;import android.view.Window;import android.widget.ListView;public class MainActivity extends Activity {private String[] string = { "A", "B", "C", "D", "E", "F", "G", "H", "I","J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V","W", "X", "Y", "Z" };/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.main);ListView listview = (ListView) findViewById(R.id.listview);MyCustomAdapter adapter = new MyCustomAdapter(this);int size = string.length;for (int i = 0; i < size; i++) {adapter.addSeparatorItem(string[i]);for (int k = 0; k < 5; k++) {adapter.addItem("item " + k);}}listview.setAdapter(adapter);}}
MyCustomAdapter.java
package com.xzq.listviewadapter;import java.util.ArrayList;import java.util.TreeSet;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.TextView;public class MyCustomAdapter extends BaseAdapter {private static final int TYPE_ITEM = 0;private static final int TYPE_SEPARATOR = 1;private static final int TYPE_MAX_COUNT = TYPE_SEPARATOR + 1;private ArrayList<String> data = new ArrayList<String>();private LayoutInflater inflater;private TreeSet<Integer> set = new TreeSet<Integer>();public MyCustomAdapter(Context context) {inflater = LayoutInflater.from(context);}public void addItem(String item) {data.add(item);}public void addSeparatorItem(String item) {data.add(item);set.add(data.size() - 1);}public int getItemViewType(int position) {return set.contains(position) ? TYPE_SEPARATOR : TYPE_ITEM;}@Overridepublic int getViewTypeCount() {return TYPE_MAX_COUNT;}@Overridepublic int getCount() {return data.size();}@Overridepublic Object getItem(int position) {return data.get(position);}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {ViewHolder holder = null;int type = getItemViewType(position);if (convertView == null) {holder = new ViewHolder();switch (type) {case TYPE_ITEM:convertView = inflater.inflate(R.layout.item1, null);holder.textView = (TextView) convertView.findViewById(R.id.item1);break;case TYPE_SEPARATOR:convertView = inflater.inflate(R.layout.item2, null);holder.textView = (TextView) convertView.findViewById(R.id.item2);break;}convertView.setTag(holder);} else {holder = (ViewHolder) convertView.getTag();}holder.textView.setText(data.get(position));return convertView;}public static class ViewHolder {public TextView textView;}}
main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#ffffff" android:orientation="vertical" > <ListView android:id="@+id/listview" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /></LinearLayout>
item1.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#ffffff" android:orientation="vertical" > <TextView android:id="@+id/item1" android:layout_width="fill_parent" android:layout_height="30dip" android:gravity="center_vertical" /></LinearLayout>
item2.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/item2" android:layout_width="fill_parent" android:layout_height="30dip" android:background="#3c4857" android:gravity="center_vertical" /></LinearLayout>
- 微信 通讯录 好友列表显示
- android 自定义ListView显示微信聊天好友列表
- 45、微信-从通讯录添加好友
- 实现微信好友列表
- 通讯录调用微信客户端查看好友朋友圈与聊天
- 微信通讯录好友检索怎么实现的?
- 一键采集微信好友id,通讯录推荐好友id,附近人id 上传服务器
- python 获取微信好友列表(微信web)
- DOM14---好友列表显示
- 读取邮箱通讯录、MSN好友列表
- 微信 显示通讯录的代码
- ListView列表显示通讯录
- Android:Gtalk(显示好友列表)
- 37、微信通讯录联系人列表适配器ContactAdapter
- swift实现微信通讯录列表TableView的创建
- 微信分享好友
- 微信好友检测
- 03环信好友管理 - 获取好友列表
- 分号、逗号的魅力
- 计算CPU的方法
- iOS学习之Table View的简单使用
- RGB函数和QBColor函数
- 团结“零距离”~~~~我们要做的事
- 微信 通讯录 好友列表显示
- Design Patterns - Abstract Factory - Example 1
- 看jstl标签做个类似 的 自定义jsp 页面标签
- 如何精简日志,只看SQL语句.
- 安装 RED5 1.0RC1报错
- Picturebox中的Picture与Image属性
- 时间管理前后
- 导师制
- 速成品~~~~NEW英语