.一个activity想去另外一个activity中拿数据
startActivityForResult(intent,0);
并且重写onActivityResult(int requestCode, int resultCode, Intent data)//
下面是一个小应用:短信助手,对大家是很有帮助的哦
MainActivity中:
public class MainActivity extends Activity {
private TextView tv_content;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_content = (TextView) findViewById(R.id.tv_content);
}
public void selectSms(View view) {
Intent intent = new Intent(this, SelectSMSActivity.class);
// 1.更换api 为startActivityForResult,开启界面获取返回值
//为了获取结果开启界面
startActivityForResult(intent, 0);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// 3.在第二个界面关闭的时候调用,返回数据放在data里面
if (data != null) {
//与第二个人界面中的intent方法是对应的
String text = data.getStringExtra("text");
tv_content.setText(text);
}else{
tv_content.setText("没有选择短信");
}
super.onActivityResult(requestCode, resultCode, data);
}
}
第二个界面:
public class SelectSMSActivity extends Activity {
private ListView lv;
private String[] smscontents={"羊年大吉","羊年happy","哈哈哈 ,新年快乐","新春快乐","天天发财","彩票中奖","^_^"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_select_sms);
lv = (ListView) findViewById(R.id.lv);
lv.setAdapter(new ArrayAdapter<String>(this, R.layout.item_textview, smscontents));
//给listview的条目设置点击事件
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
//position 被点击条目的位置
String text = smscontents[position];
Intent data = new Intent();
data.putExtra("text", text);//把数据设置到意图对象里面
setResult(0, data);
finish();//关闭当前的界面
}
});
}
}
最后不要忘记在清单文件中注册activity
startActivityForResult(intent,0);
并且重写onActivityResult(int requestCode, int resultCode, Intent data)//
下面是一个小应用:短信助手,对大家是很有帮助的哦
MainActivity中:
public class MainActivity extends Activity {
private TextView tv_content;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_content = (TextView) findViewById(R.id.tv_content);
}
public void selectSms(View view) {
Intent intent = new Intent(this, SelectSMSActivity.class);
// 1.更换api 为startActivityForResult,开启界面获取返回值
//为了获取结果开启界面
startActivityForResult(intent, 0);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// 3.在第二个界面关闭的时候调用,返回数据放在data里面
if (data != null) {
//与第二个人界面中的intent方法是对应的
String text = data.getStringExtra("text");
tv_content.setText(text);
}else{
tv_content.setText("没有选择短信");
}
super.onActivityResult(requestCode, resultCode, data);
}
}
第二个界面:
public class SelectSMSActivity extends Activity {
private ListView lv;
private String[] smscontents={"羊年大吉","羊年happy","哈哈哈 ,新年快乐","新春快乐","天天发财","彩票中奖","^_^"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_select_sms);
lv = (ListView) findViewById(R.id.lv);
lv.setAdapter(new ArrayAdapter<String>(this, R.layout.item_textview, smscontents));
//给listview的条目设置点击事件
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
//position 被点击条目的位置
String text = smscontents[position];
Intent data = new Intent();
data.putExtra("text", text);//把数据设置到意图对象里面
setResult(0, data);
finish();//关闭当前的界面
}
});
}
}
最后不要忘记在清单文件中注册activity