调用ListView对象的setOnItemClickListener()方法,设置条目的点击事件,参数:OnItemClickListener对象

使用匿名内部类实现,重写onClick()方法,传递进来的参数:ListView,当前View,position,id

根据索引位置把当前这条电话号码传回去

调用List对象的get()方法,得到Map,调用get(key)方法,得到这条电话

调用setResult()方法,返回去数据,参数:响应码,Intent对象

获取Intent对象,new出来

调用Intent对象的putExtra(key,val),把电话放进去

调用finish()方法关闭当前页面

开启这个的activity使用的是startActivityForResult()

重写onActivityResult()方法,传递进来Intent对象

判断Intent对象是否为null

调用Intent对象的getStringExtra()方法,获取到电话号码

把电话放在Edittext上,当点击下一步的时候保存到SP中

activity

package com.qingguow.mobilesafe;

import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast; public class SecGuide3Activity extends BaseSecGuideActivity {
private EditText et_sec_phone;
private SharedPreferences sp; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lost_find3);
et_sec_phone = (EditText) findViewById(R.id.et_sec_phone);
sp = getSharedPreferences("config", MODE_PRIVATE);
String phone = sp.getString("secphone", "");
et_sec_phone.setText(phone);
} public void nextStep(View v) {
showNext();
} public void preStep(View v) {
showPre();
} @Override
public void showPre() { Intent intent = new Intent(this, SecGuide2Activity.class);
startActivity(intent);
finish();
} @Override
public void showNext() {
String phone = et_sec_phone.getText().toString().trim(); if (TextUtils.isEmpty(phone)) {
Toast.makeText(this, "请填写安全号码", 1).show();
return;
} Editor editor = sp.edit();
editor.putString("secphone", phone);
editor.commit();
Intent intent = new Intent(this, SecGuide4Activity.class);
startActivity(intent);
finish();
} /**
* 选择联系人
*/
public void selectContacts(View v) {
Intent intent = new Intent(this, SelectContactsActivity.class);
startActivityForResult(intent, 0);
} @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (data != null) {
String phone = data.getStringExtra("phone").replace("-", "")
.replace(" ", "");
et_sec_phone.setText(phone);
}
}
}

SelectContactsActivity

package com.qingguow.mobilesafe;

import java.util.List;
import java.util.Map; import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.SimpleAdapter; import com.qingguow.mobilesafe.utils.PhoneContactsUtil;
/**
* 选择联系人
* @author taoshihan
*
*/
public class SelectContactsActivity extends Activity {
private ListView lv_select_contacts;
private List<Map<String,String>> contacts;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_select_contacts);
lv_select_contacts=(ListView) findViewById(R.id.lv_select_contacts);
contacts=PhoneContactsUtil.getContacts(this);
lv_select_contacts.setAdapter(new SimpleAdapter(this, contacts, R.layout.select_contacts_item, new String[]{"name","phone"}, new int[]{R.id.tv_contact_name,R.id.tv_contact_phone}));
lv_select_contacts.setOnItemClickListener(new OnItemClickListener() { @Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position,
long arg3) {
String phone=contacts.get(position).get("phone");
Intent data=new Intent();
data.putExtra("phone", phone);
setResult(0, data);
finish();
}
});
}
}

[android] 手机卫士保存安全号码的更多相关文章

  1. [android] 手机卫士保存密码时进行md5加密

    一般的手机没有root权限,进不去data/data目录,当手机刷机了后,拥有root权限,就可以进入data/data目录,查看我们保存的密码文件,因此我们需要对存入的密码进行MD5加密 获取Mes ...

  2. Android 手机卫士--签名文件说明&包名说明

    在<Android 手机卫士--打包生成apk维护到服务器>一文中,实现了新版本的apk到服务器,当打开客户端apk的时候,发现有新版本,提示更新.还实现了利用xutils工具实现了从服务 ...

  3. Android 手机卫士--参照文档编写选择器

    本文来实现<Android 手机卫士--导航界面1的布局编写>中的图片选择器部分的代码. 本文地址:http://www.cnblogs.com/wuyudong/p/5944356.ht ...

  4. Android 手机卫士--设置界面&功能列表界面跳转逻辑处理

    在<Android 手机卫士--md5加密过程>中已经实现了加密类,这里接着实现手机防盗功能 本文地址:http://www.cnblogs.com/wuyudong/p/5941959. ...

  5. Android 手机卫士--确认密码对话框编写

    本文接着实现“确认密码”功能,也即是用户以前设置过密码,现在只需要输入确认密码 本文地址:http://www.cnblogs.com/wuyudong/p/5940718.html,转载请注明出处. ...

  6. Android 手机卫士--弹出对话框

    在<Android 手机卫士--解析json与消息机制发送不同类型消息>一文中,消息机制发送不同类型的信息还没有完全实现,在出现异常的时候,应该弹出吐司提示异常,代码如下: private ...

  7. android手机卫士、3D指南针、动画精选、仿bilibli客户端、身份证银行卡识别等源码

    Android精选源码 android身份证.银行卡号扫描源码 android仿bilibili客户端 android一款3D 指南针 源码 android手机卫士app源码 android提醒应用, ...

  8. Android 手机卫士--xutils说明与下载方法使用

    xUtils简介 xUtils 包含了很多实用的android工具. xUtils 最初源于Afinal框架,进行了大量重构,使得xUtils支持大文件上传,更全面的http请求协议支持(10种谓词) ...

  9. Android 手机卫士--阶段小结1

    本文地址:http://www.cnblogs.com/wuyudong/p/5904528.html,转载请注明源地址. 本文对之前手机卫士开发进行一个小结. 1.SplashActivity 版本 ...

随机推荐

  1. (转载)RHEL7(RedHat 7)本地源的配置

    配置yum源 1.首先连接RedHat7的DVD再把挂载DVD光盘到/mnt   因为配置时候路径名里面不能有空格,否则不能识别  [root@ mnt]# mount /dev/cdrom /mnt ...

  2. Codeforces Round #499 (Div. 2) C. Fly(数学+思维模拟)

    C. Fly time limit per test 1 second memory limit per test 256 megabytes input standard input output ...

  3. Javascript高级编程学习笔记(4)—— JS中的数据类型(2)

    接着昨天的文章,今天这篇文章主要讲述JS中剩余的两种数据类型String,和Object String类型 对于该类型,书中给出的解释为:由0或多个16为Unicode字符组成的字符序列. 对于JS中 ...

  4. Android精通:View与ViewGroup,LinearLayout线性布局,RelativeLayout相对布局,ListView列表组件

    UI的描述 对于Android应用程序中,所有用户界面元素都是由View和ViewGroup对象构建的.View是绘制在屏幕上能与用户进行交互的一个对象.而对于ViewGroup来说,则是一个用于存放 ...

  5. 第二十七节:Java基础面向对象-静态,单例模式,继承详情知识点

    前言 Java基础面向对象-静态,单例模式,继承详情知识点.静态-static关键字,static变量,静态代码块,代码块(不加静态),对象创建过程,单例模式,继承. 静态-static关键字 // ...

  6. JS应用实例2:轮播图

    在学习轮播图之前,要先会切换图片: 找三张图片,命名1.jpg,2.jpg,3.jpg 示例: <!DOCTYPE html> <html> <head> < ...

  7. java中微信统一下单采坑(app微信支付)

    app支付前java后台统一下单文档:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1 微信支付接口签名校验工具:https ...

  8. LeetCode:110_Balanced Binary Tree | 平衡二叉树 | Easy

    要求:判断一棵树是否是平衡二叉树 Given a binary tree, determine if it is height-balanced. For . 代码如下: struct TreeNod ...

  9. js中数字直接点方法会报错,如1.toString()

    Number(11).toString() "11" var num = 111; undefined num.toString() "111" .toStri ...

  10. Go语言标准库之JSON编解码

    Go语言标准库之JSON编解码 基本的类型 Go语言中的数据类型和JSON的数据类型的关系 bool -> JSON boolean float64 -> JSON numbers str ...