android(30)(短信助手,intent和activity数据的回传startActivityForResult)
来源:互联网 发布:山人太极服淘宝 编辑:程序博客网 时间:2024/05/22 16:38
1.主页布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > <EditText android:id="@+id/et_number" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="请输入电话号码" /> <EditText android:id="@+id/et_content" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="请输入短信的内容" android:inputType="textMultiLine" android:lines="5" /> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="selectSms" android:text="选择短信" /> <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:onClick="selectNumber" android:text="选择电话号码" /> <Button android:onClick="sendSms" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="发送短信" /></LinearLayout>2.电话号码列表和短信列表的布局文件:<?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="match_parent" > </ListView></LinearLayout>3.每个列表的item的布局文件:<?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="wrap_content" android:orientation="vertical" > <TextView android:id="@+id/tv_info" android:layout_width="match_parent" android:layout_height="wrap_content" android:drawableLeft="@android:drawable/star_big_on" android:gravity="center_vertical" android:text="我爱你。" /></LinearLayout>4.电话号码列表的业务逻辑://列表展示电话号码public class ListNumberActivity extends Activity { private ListView lv; private String[] objects = { "1234","34324","5643543","32424" }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sms); lv = (ListView) findViewById(R.id.lv); lv.setAdapter(new ArrayAdapter<String>(this, R.layout.sms_item, R.id.tv_info, objects)); //当点击item的时候触发的方法 lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { String smsinfo = objects[position];//把响应位置的数据取出来 Intent data = new Intent(); data.putExtra("smsinfo", smsinfo);//把取出来的数据放入intent中 //设置数据。 setResult(1, data); //关闭掉当前的activity,并且回传数据 onActivityResult(). finish(); } }); }5.短信内容列表的业务逻辑:public class ListSmsActivity extends Activity { private ListView lv; private String[] objects = { "玫瑰香香,情人黏黏,情话甜甜,情歌绵绵;花灯灿灿,礼花点点,好运连连,好梦圆圆。情人节喜逢元宵节,喜鹊登枝蝴蝶成双鸳鸯成对双喜临门祝双节快乐,合家团团圆圆,甜甜蜜蜜,开开心心,幸幸福福", "情人节快到了,我精心挑选玫瑰花、百合花和满天星,扎成一束鲜花随短信送给你,火红的玫瑰代表热烈奔放,洁白的百合代表百年好合,小小的满天星代表幸福美好。愿你的情人节热烈奔放,你们的爱情百年好合,你们的生活幸福美满。预祝情人节快乐", "^o^满天星光,最爱你许过愿望的那一颗,鲜花绽放,最爱你摘下微笑的那一朵,曼妙旋律,最爱你感动落泪的那一段,亲爱的,情人节快乐,爱你。 ", "^o^宝贝,情人节到了,送你一束玫瑰,用真心塑料纸包扎,系上快乐彩带,喷点爱的香水,插一张真情卡片,写着:宝贝,愿我的爱能带给你一生的快乐!" }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sms); lv = (ListView) findViewById(R.id.lv); lv.setAdapter(new ArrayAdapter<String>(this, R.layout.sms_item, R.id.tv_info, objects)); //当点击item的时候触发的方法 lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { String smsinfo = objects[position]; Intent data = new Intent(); data.putExtra("smsinfo", smsinfo);//把信息放入intent中 //设置数据。 setResult(0, data);//设置数据和结果码用来以后根据结果码区分 //关闭掉当前的activity,并且回传数据 onActivityResult(). finish(); } }); }6.主页的业务逻辑实现:public class MainActivity extends Activity { private EditText et_content;//短信内容 private EditText et_number;//短信号码 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_content = (EditText) findViewById(R.id.et_content); et_number = (EditText) findViewById(R.id.et_number); } //当点击选择信息的时候触发的方法 public void selectSms(View view) { Intent intent = new Intent(this, ListSmsActivity.class); // 开启一个新的界面,并且获取界面的返回值 // startActivity(intent); // int requestCode 请求码 startActivityForResult(intent, 0); } //当点击选择号码的时候触发的方法 public void selectNumber(View view) { Intent intent = new Intent(this, ListNumberActivity.class); // 开启一个新的界面,并且获取界面的返回值 // startActivity(intent); // int requestCode 请求码 startActivityForResult(intent, 1); } //回传信息 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (data != null) { String smsinfo = data.getStringExtra("smsinfo");//把intent中的数据根据信息提出来 if (resultCode == 0) { et_content.setText(smsinfo); } else if (resultCode == 1) { et_number.setText(smsinfo); } } super.onActivityResult(requestCode, resultCode, data); } //当点击发送信息的按钮时触发的方法 public void sendSms(View view){ String content = et_content.getText().toString().trim(); String number = et_number.getText().toString().trim(); SmsManager.getDefault().sendTextMessage(number, null, content, null, null); Toast.makeText(this, "发送成功", 0).show(); }
0 0
- android(30)(短信助手,intent和activity数据的回传startActivityForResult)
- 显式Intent和隐式Intnet差别、利用Intent进行Activity之间的数据传递(getStringExtra、startActivityForResult)
- 【startActivityForResult】Android Activity回传数据
- Android开发系列(十三):Intent实现Activity之间的转换以及startActivityForResult传递参数
- android的Intent中startActivityForResult来回传数据
- Intent的用法(一),启动activity传递数据以及startActivityForResult
- Intent的用法(一),启动activity传递数据以及startActivityForResult .
- Intent和Activity的另一种启动方法startActivityForResult()
- Android中Intent的详解(显式,隐式,系统,startActivityForResult);
- activity 之间信息的传递 Intent 回调参数startActivityForResult
- Android中Activity之间的数据传递(Intent和Bundle)
- android Intent返回数据,回调数据,startActivityForResult用法
- Activity回传数据方法startActivityForResult onActivityResult
- Activity回传数据方法startActivityForResult onActivityResult
- Activity回传数据方法startActivityForResult onActivityResult
- Android中Activity之间的数据传递和Intent使用
- Android中Activity之间的数据传递和Intent使用
- Android Activity和Intent机制(转)
- 黑马程序员——C基础之内存分配函数
- const和typedef一起使用
- Tvos多层图片的使用
- SqlServer 打开或关闭自增列
- HttpURLConnection、HttpClient的作用,方法,简介
- android(30)(短信助手,intent和activity数据的回传startActivityForResult)
- c#生成时间戳
- iOS时间戳转换日期 iOS时间戳转换星期几
- Data Augmentation
- 正则替换SRC链接
- 黑马程序员——C基础之一维数组
- Tvos模拟器遥控的快捷键
- Hadoop
- JAVA反射常用方法