在设置向导的第三个界面,点击“选择联系人按钮”进入选择联系人界面,并且在选择联系人界面传回电话号码到第三个设置向导界面。
监听事件:
/** * 选择联系人的按钮的点击事件 * * @param view */ public void selectContact(View view) { Intent intent = new Intent(Setup3Activity.this, SelectContactActivity.class); // 希望返回给本类一个电话号码,所以使用下面的方法 startActivityForResult(intent, 0); // 要求finish()或者startActivity(intent)方面后面执行 overridePendingTransition(R.anim.tran_in, R.anim.tran_out); }
设置ListView的每个Item的点击的事件:
list_select_contact.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { String phone = data.get(position).get("phone"); Intent data = new Intent(); data.putExtra("phone", phone); setResult(0, data); finish(); } });
onActivityResult中设置安全号码:
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (data == null) { return; } // 电话号码的“-”去掉 String phone = data.getStringExtra("phone").replace("-", ""); number.setText(phone); }
在点击下一步的时候做个判断,如果没有设置安全号码,则不让进入下一步。
@Override public void showNext() { //应该保存下安全号码 String phonenumber = number.getText().toString().trim(); if (TextUtils.isEmpty(phonenumber)) { Toast.makeText(this, "安全号码未设置,请先设置安全号码.", Toast.LENGTH_LONG).show(); return; } //应该保存下安全号码 Editor editor = sp.edit(); editor.putString("safenumber", phonenumber); editor.commit(); Intent intent = new Intent(this, Setup4Activity.class); startActivity(intent); finish(); // 要求finish()或者startActivity(intent)方面后面执行 overridePendingTransition(R.anim.tran_in, R.anim.tran_out); }
如果已经设置了安全号码,每次重新进入的时候,显示安全号码:
number.setText(sp.getString("safenumber", null));
时间: 2024-10-26 03:24:08