<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">这学期android讲了一大半了,说期末要交作业,一个简单的联系人。</span>

基本要求(很简单)。

1、可以跳转界面

2、长按出现上下文菜单

<1>获取当前联系人电话号码,实现打电话功能。

<2>获取当前联系人电话号码,实现发短息功能。

跳转界面代码

import java.util.Timer;
import java.util.TimerTask;import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.os.Build;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);final Intent it = new Intent(this,lian.class);Timer timer = new Timer();TimerTask task = new TimerTask(){public void run(){startActivity(it);}};timer.schedule(task,1000*3);}}

联系人界面布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="horizontal" ><ImageView android:id="@+id/img"android:layout_width="50dp"android:layout_height="50dp"/><LinearLayout android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="50dp"><TextViewandroid:id="@+id/name"android:layout_width="fill_parent"android:layout_height="30dp"android:gravity="center_vertical"/><TextViewandroid:text="telnum"android:id="@+id/telnum"android:layout_width="fill_parent"android:layout_height="20dp"android:gravity="center_vertical"/></LinearLayout></LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><ListView android:id="@+id/lv"android:layout_width="match_parent"android:layout_height="wrap_content"></ListView></LinearLayout>

联系人界面代码

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View.OnCreateContextMenuListener;
import android.widget.Adapter;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;public class lian extends Activity {private ListView lv;String phonenum;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.listview);lv = (ListView) findViewById(R.id.lv);int[] img = new int[]{R.drawable.img_01,R.drawable.img_02,R.drawable.img_03,R.drawable.img_04,R.drawable.img_05,R.drawable.img_06,R.drawable.img_07,R.drawable.img_08,R.drawable.img_09,R.drawable.img_10,R.drawable.img_11,R.drawable.img_12,R.drawable.img_13,R.drawable.img_14,R.drawable.img_15,R.drawable.img_16,R.drawable.img_17,R.drawable.img_18,R.drawable.img_19,R.drawable.img_20};String[] name = new String[] {"张一","张二","张三","张四","张五","李一","李二","李三","李四","李五","王一","王二","王三","王四","王五","刘一","刘二","刘三","刘四","刘五"};String[] telnum = new String[]{"1008611","1008612","1008613","1008614","1008615","1001011","1001012","1001013","1001014","1001015","1000011","1000012","1000013","1000014","1000015","9558811","9558812","9558813","9558814","9558815"};List<Map<String,Object>> StringItems = new ArrayList<Map<String,Object>>();for(int i = 0 ; i < img.length ; i++){Map<String,Object> map = new HashMap<String,Object>();map.put("img", img[i]);map.put("name", name[i]);map.put("telnum", telnum[i]);StringItems.add(map);}SimpleAdapter adapter = new SimpleAdapter(this,StringItems,R.layout.items,new String[]{"img","name","telnum"},new int[]{R.id.img,R.id.name,R.id.telnum});lv.setAdapter(adapter);registerForContextMenu(lv);
//       lv.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
//      public void onCreateContextMenu(ContextMenu arg0, View arg1,
//              ContextMenuInfo arg2) {
//          MenuInflater inflator = new MenuInflater(lian.this);
//          inflator.inflate(R.menu.main,arg0);
//          arg0.setHeaderTitle("请选择");
//      }
//  });     lv.setOnItemClickListener(new OnItemClickListener() {public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {Adapter adapter=arg0.getAdapter();Map<String,String> map=(Map<String, String>) adapter.getItem(arg2);phonenum = map.get("telnum");//Toast.makeText(lian.this, phonenum, Toast.LENGTH_LONG).show();lv.showContextMenu();}});lv.setOnItemLongClickListener(new OnItemLongClickListener() {public boolean onItemLongClick(AdapterView<?> arg0, View arg1,int arg2, long arg3) {Adapter adapter=arg0.getAdapter();Map<String,String> map=(Map<String, String>) adapter.getItem(arg2);phonenum = map.get("telnum");//Toast.makeText(lian.this, phonenum, Toast.LENGTH_LONG).show();lv.showContextMenu();return true;}});}@Overridepublic void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {super.onCreateContextMenu(menu, v, menuInfo);MenuInflater inflator = new MenuInflater(lian.this);inflator.inflate(R.menu.main,menu);menu.setHeaderTitle("请选择");}public boolean onContextItemSelected(MenuItem item){switch(item.getItemId()){case R.id.tel:Uri ui1 = Uri.parse("tel:" + phonenum);Intent it1 = new Intent();it1.setAction(Intent.ACTION_CALL);it1.setData(ui1);startActivity(it1);break;case R.id.mms:Uri ui2 = Uri.parse("smsto:" + phonenum);Intent it2 = new Intent();it2.setAction(Intent.ACTION_SENDTO);it2.setData(ui2);it2.putExtra("sms_body", "你好");startActivity(it2);break;}return true;}
}

Android作业——简单的联系人相关推荐

  1. Android 系统简单介绍

    Android 系统简单介绍 2011年11月20日 写这篇文章的目的是为了给那些刚刚入手安 卓手机的新手们一些参考,希望他们能快速的上手 [第一期]ANDROID基础知识1~20 [第二期]继续泡! ...

  2. Android向通讯录添加联系人的一般方法

     Android向通讯录添加联系人的一般方法 以一个简单的例子加以说明,记得需要相应的权限: <uses-permission android:name="android.perm ...

  3. android实现简单的记账功能

    android实现简单的记账功能 ps:这次作业真的有点折磨我,花了我断断续续三天的时间,其中有很多功能都是想实现,但是感觉就差一点点,由于截止时间快要到了,只能将还未实现的功能先搁置,后续会补充更多 ...

  4. Android 通过ListView实现联系人列表字母索引

    转载:Android自定义View--实现联系人列表字母索引_Code-Porter的博客-CSDN博客_android 字母索引 学习大神的思路和逻辑,很清晰. 这篇博文也不错:安卓仿手机联系人右侧 ...

  5. Android Studio简单设置

    2019独角兽企业重金招聘Python工程师标准>>> Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面 ...

  6. 简单Android手机APP地图,android最简单手机地图APP(只需5分钟)

    android最简单手机地图APP--只有三部分. 第一部分 首先建立一个MapActivity在setContentView(R.layout.activity_map);中创建一个代码如下. [h ...

  7. android仿微信的activity平滑水平切换动画,Android实现简单底部导航栏 Android仿微信滑动切换效果...

    Android实现简单底部导航栏 Android仿微信滑动切换效果 发布时间:2020-10-09 19:48:00 来源:脚本之家 阅读:96 作者:丶白泽 Android仿微信滑动切换最终实现效果 ...

  8. 【转】Android Studio简单设置

    原文网址:http://ask.android-studio.org/?/article/14 Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以 ...

  9. Android JNI简单实例(android 调用C/C++代码)

    转载自 xiechengfa 最终编辑 xiechengfa Android JNI简单实例关键字: android.jni Android的jni实例 android 的应用程序(Dalvik VM ...

最新文章

  1. 计算机管理损坏的图像,损坏的图像(打开软件出现)解决方法
  2. 当React Native 遇到了Google reCAPTCHA
  3. Golang的数组、切片、映射的理解
  4. 6升小米6——算法解题
  5. linux终端帮助,Linux下的帮助命令
  6. VUE 数据绑定模块渲染 computed(实现通过路由id 查询数据json结构,对应的值来放在面包屑中)...
  7. PostgreSQL hstore 列性能提升一例
  8. Oracle执行计划稳固
  9. go遍历结构体(struct)字段对应的值,切片(slice),字典(map)
  10. 洛谷P3709 大爷的字符串题(莫队)
  11. 2.3Word2003段落设置1
  12. Audition 如何录制电脑内部声音
  13. 星期一到星期日的英文及缩写 和 一月到十二月的英语单词及缩写?
  14. ps多行文字如何左右对齐
  15. URL缩短器:详细说明
  16. mybatis-plus使用this.saveBatch报java.lang.NullPointer空指针异常
  17. powerdesinger 批量修改表前缀
  18. Symantec赛门铁克强制型EV SSL服务器证书
  19. MySQL-LOCATE和FIND_IN_SET函数
  20. 深圳, 香港, 台北之對比

热门文章

  1. SpringCloud Gateway架构流程 和 内置的路由断言介绍
  2. 欢聚时代(YY)视频编解码面经
  3. 5个MongoDB安全提示,帮助您远离困境
  4. Rasa 聊天机器人框架使用流程
  5. 解决提交到github报错Please tell me who you are.和为不同的项目设置不同的名称
  6. 记一道智力测试题-老鼠喝毒酒
  7. jenkins post steps设置记录
  8. python 编码转换 专题
  9. 论文阅读:FFA-Net: Feature Fusion Attention Network for Single Image Dehazing
  10. 【Python专题】pandas.melt函数