如何在Activity中启动另一个Activity与值传递
来源:互联网 发布:70d锦纶单股网络丝 编辑:程序博客网 时间:2024/06/05 20:22
1. 如何在Activity中启动另一个Activity?
(1)在Android Mainifest 文件中声明Activity
格式如下:
(2)调用startActivity(Intent intent)方法
Intent intent=newIntent(MainActivity.this,NextActivity.class);
startActivity(Intent intent);
2把数据从一个Activity传到另一个Activity
(1) 直接采用Intent封装
a.发送部分
Intentintent=newIntent(MainActivity.this,NextActivity.class);
Stringa=edittext1.getText().toString().trim();
Stringb=edittext2.getText().toString().trim();
intent.putExtra("message",a+"+"+b+"=");
startActivity(intent);
b.接收部分
Intent intent = getIntent();
String message = intent.getStringExtra("message");
shizi.setText(message);
完整代码如下:
MainActivity:
packagecom.example.firstactivity;
importandroid.os.Bundle;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.view.View;
importandroid.widget.Button;
importandroid.widget.EditText;
publicclass MainActivity extends Activity {
private Button button1;
private EditText edittext1,edittext2,edittext3;
@Override
protected void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edittext1=(EditText)findViewById(R.id.editText1);
edittext2=(EditText)findViewById(R.id.editText2);
edittext3=(EditText)findViewById(R.id.edittext3);
button1=(Button)findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v){
// TODOAuto-generated method stub
Intent intent=newIntent(MainActivity.this,NextActivity.class);
Stringa=edittext1.getText().toString().trim();
Stringb=edittext2.getText().toString().trim();
intent.putExtra("message",a+"+"+b+"=");
startActivityForResult(intent,1000);
}
});
}
@Override
protected void onActivityResult(intrequestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode,resultCode, data);
if (requestCode == 1000 &&resultCode == 1001) {
//从子窗口中获取返回结果
String result_value =data.getStringExtra("result");
edittext3.setText(result_value);
}
}
}
NextActivity:
packagecom.example.firstactivity;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.widget.Button;
importandroid.widget.EditText;
importandroid.widget.TextView;
publicclass NextActivity extends Activity {
private TextView shizi;
private Button button2;
private EditText result ;
public NextActivity() {
// TODO Auto-generated constructorstub
}
@Override
protected void onCreate(BundlesavedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.next);
button2 =(Button)this.findViewById(R.id.button2);
result =(EditText)this.findViewById(R.id.result);
shizi =(TextView)this.findViewById(R.id.shizi);
Intent intent = getIntent();
String message =intent.getStringExtra("message");
shizi.setText(message);
button2.setOnClickListener(newView.OnClickListener() {
@Override
public void onClick(View v){
// TODOAuto-generated method stub
String value =result.getText().toString().trim();
Intent intent =new Intent();
intent.putExtra("result",value);
//设置回传的意图
setResult(1001,intent);
finish();//结束activity的生命周期
}
});
}
}
(2)采用Bundle封装
a.发送部分
Bundle bundle=new Bundle();
Bundle.putString(“name”,name);
Intent.putExtras(bundle);
startActivity(intent);
b.接收部分
Bundle bundle=this.getIntent().getExtras();
String name=bundle.getString(“name”);
(EditText)et.setText(name);
- 如何在Activity中启动另一个Activity与值传递
- 如何在Activity中启动另一个Activity与Activity之间值传递
- 如何启动另一个Activity
- android之在activity中控制另一个activity的UI更新_如何在activity之间传递handler
- android之在activity中控制另一个activity的UI更新_如何在activity之间传递handler
- android之在activity中控制另一个activity的UI更新_如何在activity之间传递handler
- 在当前activity中启动自己另一个程序的activity
- Fragment向另一个Fragment进行传值通过Activity来传递在同一个Activity中
- 如何在一个activity中关闭另一个activity
- 在一个Activity(Activity B)中如何关闭另一个Activity(Activity A)?
- 从一个activity中启动另一个activity
- android之在activity中控制另一个activity的UI更新_如何在activity之间传递handler&利用broadcast广播机制
- 在Activity中接收另一个Activity的返回值
- 在Activity中关闭另一个Activity
- 在Activity中关闭另一个Activity
- 一个activity启动另一个activity并传递参数
- 在一个Activity bull中启动另一个Activity secondbull的方法 1
- 在一个activity中启动另一个activity并等待传输数据,即startActivityForResult()的使用
- 字节码解释Java自动装箱和拆箱的操作
- Cocos2d-x 3.0 beta2 环境搭建-在安卓手机上运行Hello World
- 笔试题2,输出如下图形
- linux makefile学习笔记(5)
- C# 访问PostgreSQL 数据库
- 如何在Activity中启动另一个Activity与值传递
- 扫雷小游戏
- QT4.8-VS2008-安装
- OpenGL进阶(十七) - 深入理解OpenGL
- HDU4283 You Are the One 有点难的区间DP
- Eclipse的快捷键
- .NET 访问PostgreSQL数据库
- 黑马程序员_Java基础01_基础语法
- 吉日嘎拉通用权限管理系统