自定义适配器与电话功能
2015-01-30 22:49
232 查看
MyAdapter自定义适配器:
//具体方法如下:
-------------------------------------------------------------------------------------------
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 1,找到控件 lv = (ListView) findViewById(R.id.lv_list); // 2,定义适配器 // >>>>>>>>>>>>>>>>>>>2.3自定义适配器 MyAdapter adapter = new MyAdapter(); // 3,加载适配器 lv.setAdapter(adapter); } private class MyAdapter extends BaseAdapter { @Override public int getCount() { // TODO Auto-generated method stub return objects.length; } @Override public View getView(int position, View convertView, ViewGroup parent) { // 加载布局 activity加载布局 /* * LayoutInflater inflater=getLayoutInflater(); * inflater.inflate(resource, root); */ View contentView = View.inflate(getApplicationContext(), R.layout.list_item, null); // 找到布局里面的控件 ImageView iv = (ImageView) contentView.findViewById(R.id.iv_logo); TextView tv = (TextView) contentView.findViewById(R.id.tv_name); // 加载相应数据 iv.setImageResource(imgs[position]); tv.setText(objects[position]); return contentView; } @Override public Object getItem(int position) { // TODO Auto-generated method stub return null; } @Override public long getItemId(int position) { // TODO Auto-generated method stub return 0; } }-------------------------------------------------------------------------------------------------------------------------------------------------- 拨号功能
lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { //添加意图 Intent intent = new Intent(); //添加动作 intent.setAction(intent.ACTION_CALL); //添加数据 intent.setData(Uri.parse("tel:"+phones[position])); startActivity(intent); } });
-------------------------------------------------------------------------------------------
短信功能(页面跳转)
lv.setOnItemLongClickListener(new OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Intent i=new Intent(getApplicationContext(), SmsActivity.class); i.putExtra("number", phones[position]); startActivity(i);
return true; } });
-------------------------------------------------------------------------------------------
在用模拟器实现打电话发送短信等功能时需要在运行给它授予权限(授权方法:AndtoidManifest------>Permissions----->Add---->Uses Permission----->选择要授予的权限---->Ctrl+s),若想实现发短信功能还需要先进行注册(注册方法:AndtoidManifest------>AndroidManifesf.xml------>建一个<activity (这里写入android:name="com.eduask.dialing.类名")></activity>标签)
在写代码时常范的错误:用LinearLayout时要记得给<LinearLayout设置宽度和高度></LinearLayout>不然将无法显示写在LinearLayout中的内容!切记-。-、、!!!
本文出自 “Android小笔记” 博客,请务必保留此出处http://dreamwing.blog.51cto.com/9872128/1610150
//具体方法如下:
-------------------------------------------------------------------------------------------
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 1,找到控件 lv = (ListView) findViewById(R.id.lv_list); // 2,定义适配器 // >>>>>>>>>>>>>>>>>>>2.3自定义适配器 MyAdapter adapter = new MyAdapter(); // 3,加载适配器 lv.setAdapter(adapter); } private class MyAdapter extends BaseAdapter { @Override public int getCount() { // TODO Auto-generated method stub return objects.length; } @Override public View getView(int position, View convertView, ViewGroup parent) { // 加载布局 activity加载布局 /* * LayoutInflater inflater=getLayoutInflater(); * inflater.inflate(resource, root); */ View contentView = View.inflate(getApplicationContext(), R.layout.list_item, null); // 找到布局里面的控件 ImageView iv = (ImageView) contentView.findViewById(R.id.iv_logo); TextView tv = (TextView) contentView.findViewById(R.id.tv_name); // 加载相应数据 iv.setImageResource(imgs[position]); tv.setText(objects[position]); return contentView; } @Override public Object getItem(int position) { // TODO Auto-generated method stub return null; } @Override public long getItemId(int position) { // TODO Auto-generated method stub return 0; } }-------------------------------------------------------------------------------------------------------------------------------------------------- 拨号功能
lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { //添加意图 Intent intent = new Intent(); //添加动作 intent.setAction(intent.ACTION_CALL); //添加数据 intent.setData(Uri.parse("tel:"+phones[position])); startActivity(intent); } });
-------------------------------------------------------------------------------------------
短信功能(页面跳转)
lv.setOnItemLongClickListener(new OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Intent i=new Intent(getApplicationContext(), SmsActivity.class); i.putExtra("number", phones[position]); startActivity(i);
return true; } });
-------------------------------------------------------------------------------------------
在用模拟器实现打电话发送短信等功能时需要在运行给它授予权限(授权方法:AndtoidManifest------>Permissions----->Add---->Uses Permission----->选择要授予的权限---->Ctrl+s),若想实现发短信功能还需要先进行注册(注册方法:AndtoidManifest------>AndroidManifesf.xml------>建一个<activity (这里写入android:name="com.eduask.dialing.类名")></activity>标签)
在写代码时常范的错误:用LinearLayout时要记得给<LinearLayout设置宽度和高度></LinearLayout>不然将无法显示写在LinearLayout中的内容!切记-。-、、!!!
本文出自 “Android小笔记” 博客,请务必保留此出处http://dreamwing.blog.51cto.com/9872128/1610150
相关文章推荐
- Android开发教程--自定义接听/挂断电话功能
- AndoridGridView 自定义适配器 监听事件的使用,实现更换头像功能
- ASP.NET中利用DataGrid的自定义分页功能和存储过程结合实现高效分页
- 利用.Text的公告功能来实现一些自定义功能
- ASP.NET中利用DataGrid的自定义分页功能和存储过程结合实现高效分页
- [原创]使用自定义类库实现中间件的功能
- 在J2ME和WAP中实现电话呼叫功能
- 新鲜出炉,几分钟以前刚刚完成,一个带自定义分页,排序功能的DATAGRID控件(公开源码)
- 在WEB自定义控件中实现自动回传功能
- 用脚本为本blog增加了几项自定义功能
- ASP.NET中利用DataGrid的自定义分页功能和存储过程结合实现高效分页
- ASP.NET中利用DataGrid的自定义分页功能和存储过程结合实现高效分页
- 利用语音Modem实现电话点播和留言功能
- 采用Informaker和pbl中dw相结合的方式实现强大的自定义报表功能
- 怎样给应用程序添加打印功能,并且能按照自定义格式进行打印!
- 自定义Windows 2000的文件保护功能
- ASP.NET中利用DataGrid的自定义分页功能和存储过程结合实现高效分页
- 利用DataGrid的自定义分页功能和存储过程结合实现高效分页
- 在WEB自定义控件中实现自动回传功能
- 在J2ME和WAP中实现电话呼叫功能转载自j2medev