我的应用程序中有两个活动说EMPID和INFO。 在EMPID活动中,我有一个EditText说empid,另一个活动INFO我有另一个EditText名称。
我可以在每个活动中使用Button切换这些活动。
但是当我切换到第二个活动并回到第一个活动时,我希望显示empid的值。
任何人都可以帮助解决这些问题。
提前谢谢你。
答案 0 :(得分:1)
更改代码,将数据从第一个活动发送到第二个活动:
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
/*Create new Intent Object, and specify class*/
Intent intent = new Intent();
intent.setClass(EMPID.this,INFO.class);
/*new Bundle Object, and put data in bundle object*/
Bundle bundle = new Bundle();
bundle.putString("EMPID ","empid");
/*Put Bundle object i.e bundle in intent*/
intent.putExtras(bundle);
EMPID.this.startActivity(intent);
@Override
public void onResume()
{
//SET EDITVIEW VALUE HERE to EMPID
super.onResume();
}
在活动信息中:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.receivermain);
TextView txtvwreceived=(TextView)findViewById(R.id.txtviewsender);
/* Intent To obtain the bundle object from EMPID */
Bundle bundle = this.getIntent().getExtras();
/* Obtain String from Intent */
if(bundle !=null)
{
/* Obtain Data from bundle object */
String strdata = bundle.getString("EMPID");
}
}
和第二种方法使用startActivityForResult()
启动第二个Activity(INFO.class)并覆盖第一个活动(EMPID.class)中的onActivityResult
方法以设置EditView值。
答案 1 :(得分:0)
拨打第二个活动时使用startActivityForResult()
。这将保持第一个活动处于其先前状态,并且当您切换回第一个活动时,可以保留empid
。
如果您想将empid的值发送到第二个活动,可以使用intent.putExtra()
。
答案 2 :(得分:0)
您需要putExtras
和getIntExtras
以下代码段将为您提供帮助。
<强> EMPID.java 强>
Intent intent=new Intent(this,INFO.class);
intent.putExtra("id", empid);
startActivity(intent);
<强> INFO.java 强>
int empId=getIntent().getIntExtra("id", 0);