当前位置: 首页 > news >正文

唐山网站建设培训/百度首页优化排名

唐山网站建设培训,百度首页优化排名,jsp网站开发环境搭建,甘肃兰州做网站Android 系统给我们提供了访问通讯录的接口,通过接口获取通讯录信息。Adapter 与 View 的连接主要依靠 getView 这个方法返回我们需要的自定义 view。 ListView 是 Android App 中一个最最最常用的控件了,所以如何让 ListView 流畅运行,获取良…

Android 系统给我们提供了访问通讯录的接口,通过接口获取通讯录信息。Adapter 与 View 的连接主要依靠 getView 这个方法返回我们需要的自定义 view。 ListView 是 Android App 中一个最最最常用的控件了,所以如何让 ListView 流畅运行,获取良好的用户体验是非常重要的。 对 ListView 优化就是对 Adapter 中的 getView 方法进行优化。

 

核心内容:

1.获取手机通讯录

2.数据封装

3.创建 Adapter 

4.优化适配器

 

开发环境:Eclipse

 

效果图:

 

步骤:

1.新建项目,新建 GetNumber.class 类,用来获取通讯录中的信息

package com.yanis.getmyphonenumber;import java.util.ArrayList;
import java.util.List;import android.content.Context;
import android.database.Cursor;
import android.provider.ContactsContract.CommonDataKinds.Phone;public class GetNumber {public static List<PhoneInfo> lists = new ArrayList<PhoneInfo>();public static String getNumber(Context context) {Cursor cursor = context.getContentResolver().query(Phone.CONTENT_URI,null, null, null, null);String phoneNumber;String phoneName;while (cursor.moveToNext()) {phoneNumber = cursor.getString(cursor.getColumnIndex(Phone.NUMBER));//电话号码phoneName = cursor.getString(cursor.getColumnIndex(Phone.DISPLAY_NAME));//姓名PhoneInfo  info = new PhoneInfo(phoneName, phoneNumber);lists.add(info);System.out.println(phoneName+phoneNumber);}return null;}
}

2.添加权限

   <!-- 读取联系人权限 -->  
<uses-permission android:name="android.permission.READ_CONTACTS"/>

3.新建 PhoneInfo.class 类作为通讯录信息封装类

package com.yanis.getmyphonenumber;/*** * @author yechao* @说明 通讯录信息封装类*/
public class PhoneInfo {private String phoneName;private String phoneNumber;public PhoneInfo(String phoneName, String phoneNumber) {setPhoneName(phoneName);setPhoneNumber(phoneNumber);}public String getPhoneName() {return phoneName;}public void setPhoneName(String phoneName) {this.phoneName = phoneName;}public String getPhoneNumber() {return phoneNumber;}public void setPhoneNumber(String phoneNumber) {this.phoneNumber = phoneNumber;}}

4.自定义 ListView 的适配器类 MyAdapter.class 

package com.yanis.getmyphonenumber;import java.util.List;import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.LinearLayout;
import android.widget.TextView;public class MyAdapter extends BaseAdapter {private List<PhoneInfo> lists;private Context context;//承接上下文public MyAdapter(List<PhoneInfo> lists,Context context){this.lists = lists;this.context = context;}//返回集合的数量
    @Overridepublic int getCount() {return lists.size();}//返回当前数据
    @Overridepublic Object getItem(int position) {return lists.get(position);}//获取当前ID
    @Overridepublic long getItemId(int position) {return position;}//返回当前视图 
    @Overridepublic View getView(int position, View convertView, ViewGroup parent) {ViewHolder holder ;if(convertView==null){convertView = LayoutInflater.from(context).inflate(R.layout.call,null);holder = new ViewHolder();holder.tvName =  (TextView)convertView.findViewById(R.id.tv_Name);holder.tvNumber =  (TextView)convertView.findViewById(R.id.tv_Number);convertView.setTag(holder);}else {holder = (ViewHolder)convertView.getTag();}holder.tvName.setText(lists.get(position).getPhoneName());holder.tvNumber.setText(lists.get(position).getPhoneNumber());return convertView;}private static class ViewHolder{TextView tvName;TextView tvNumber;}}

5.最后就是主界面代码,至于布局太简单就不列出来了,有兴趣的童鞋可以查看源代码

package com.yanis.getmyphonenumber;import android.app.Activity;
import android.os.Bundle;
import android.widget.ListView;public class MainActivity extends Activity {private ListView listView;private MyAdapter adapter;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);GetNumber.getNumber(this);initView();}private void initView() {listView =(ListView) findViewById(R.id.listView);adapter = new MyAdapter(GetNumber.lists, this);listView.setAdapter(adapter);}
}

 

 

源代码地址:https://github.com/YeXiaoChao/Yc_demo_getMyPhoneNumber

本文地址:http://www.cnblogs.com/yc-755909659/p/4312221.html

转载于:https://www.cnblogs.com/yc-755909659/p/4312221.html

http://www.jmfq.cn/news/5012101.html

相关文章:

  • 万国手表网站/河南网站推广
  • 湖南省建设厅网站/哈尔滨seo关键字优化
  • 二次开发语言/网站推广优化方案
  • 我想建立一个网站不知道怎么做啊/搜索引擎优化教程
  • 韩国手表网站/广告推广网站
  • 服务商pid是什么意思/百度爱采购怎么优化排名
  • 丽江网站建设/优化网站视频
  • 浙江省网站备案注销申请表/武汉网站开发公司seo
  • 江西网站建设价格低/网络营销的概述
  • 注册网站商标多少钱/怎样注册个人网站
  • 深圳网址网站建设公司/刷赞网站推广永久
  • 怎么弄网站/上海网站快速排名优化
  • 广州比较好的网站建设哪家好/外贸平台自建站
  • 服装网站建设目标/优化大师好用吗
  • 网站做项目/seo基础视频教程
  • 如何建设管理好法院网站/百度主页网址
  • 制作网站能赚钱吗/百度引流免费推广怎么做
  • 怎么做简单网站/郑州seo哪家好
  • 网站开发建设合同/百度关键词怎么设置
  • dedecms企业网站模板/百度一下你就知道主页
  • 黄浦专业做网站/网站监测
  • 一个公司做两个网站的好处/seo排名优化北京
  • 网站关键词搜索排名怎么做/天机seo
  • 台州网站设计开发/广告网站有哪些
  • 教做潮男的网站/什么网站可以免费推广
  • ftp和网站后台/什么是搜索引擎推广
  • 公司域名备案网站名称/聊石家庄seo
  • 购物网站开发技术/东莞seo建站公司
  • 建站平台做的网站google/一网信息一个简单便捷的新闻网站
  • 潍坊地区制作网站/天津网站制作系统